随笔分类 -  python高级知识

摘要:一:什么叫包 理解:包含__init__.py的文件就称为包,包以及包里面的文件,一般情况下,是不会手动执行的,是为了被引用,然后由入口函数统一执行。 test1.py def add1(): print("add1") test2.py test3.py test4.py 和test1函数一样,函 阅读全文
posted @ 2020-04-04 18:48 张京墨 阅读(630) 评论(0) 推荐(0) 编辑
摘要:一:作用 python的错误信息报告 # TODO 阅读全文
posted @ 2020-04-04 13:51 张京墨 阅读(246) 评论(0) 推荐(0) 编辑
摘要:super()方法:调用父类方法,也就是新建一个super类的实例对象 class super(object): """ super() -> same as super(__class__, <first argument>) super(type) -> unbound super object 阅读全文
posted @ 2020-04-04 13:11 张京墨 阅读(190) 评论(0) 推荐(0) 编辑
摘要:一:调用区别 class Demo(object): @staticmethod def static_method(): return "static_method" @classmethod def instance_method(self): return "instance_method" 阅读全文
posted @ 2020-04-03 15:55 张京墨 阅读(1567) 评论(0) 推荐(0) 编辑
摘要:一:celery 作用:celery能后执行异步操作,可以去执行耗时的函数,也可以用来做定时调度 例如:发短信,消息推送,音视频处理 普通函数 import time def add(x, y): print("进入函数") time.sleep(5) return x + y if __name_ 阅读全文
posted @ 2020-03-17 17:09 张京墨 阅读(895) 评论(1) 推荐(0) 编辑
摘要:一:gevent模块 import gevent def f(n): for i in range(n): print(gevent.getcurrent(), i) # 创建一个普通的greenlet对象,并进行切换 g1 = gevent.spawn(f, 5) g2 = gevent.spaw 阅读全文
posted @ 2020-03-17 15:15 张京墨 阅读(413) 评论(0) 推荐(0) 编辑
摘要:二:迭代器 迭代:是一种动作,访问集合元素的一种方式。 迭代器:是一种对象,可以记住遍历位置的一种对象,迭代器只能往前,知道集合中的所有元素被访问完,才会结束。 那么什么东西才能被迭代呢?也就是可以for in 可迭代对象:list tuple dict str for i in 100: prin 阅读全文
posted @ 2019-12-29 17:08 张京墨 阅读(255) 评论(0) 推荐(0) 编辑
摘要:一:并发的概念 当有多个线程在操作时,如果系统只有一个CPU,则它根本不可能真正同时执行一个以上的线程,它只能把CPU运行时间划分成若干个时间段,再将时间 段分配给各个线程执行,在一个时间段的线程代码运行时,其它线程处于挂起状。这种方式我们称之为并发(Concurrent)。 二:并行的概念 当系统 阅读全文
posted @ 2019-12-29 15:27 张京墨 阅读(1263) 评论(0) 推荐(0) 编辑
摘要:一:什么是线程池 线程池是一种多线程处理形式,处理过程中将任务添加到队列,然后在创建线程后自动启动这些任务。 二:线程池的原理 线程池创建会设置一个最大容量,就是线程池里面线程的数量,也就是说线程池里面存放固定数量的线程。最优的数量是:2 * cpu的数量个 三:为什么要使用线程池 假设有10000 阅读全文
posted @ 2019-12-28 21:09 张京墨 阅读(353) 评论(0) 推荐(0) 编辑
摘要:1. 获取当前文件的路径 test.py os.path.abspath(path) # 返回当前文件运行的绝对路径 print("程序的绝对路径是",os.path.abspath(__file__)) # __file__就是当这个文件的绝对路径, 结果:程序的绝对路径是 F:\python高级 阅读全文
posted @ 2019-12-09 20:45 张京墨 阅读(347) 评论(0) 推荐(0) 编辑
摘要:# 1. 测试代码的运行时间 import time def outter(func): def inner(*args,**kwargs): s = time.time() func() e = time.time() return e - s return inner @outter def d 阅读全文
posted @ 2019-11-24 17:14 张京墨 阅读(814) 评论(0) 推荐(0) 编辑
摘要:恢复内容开始 垃圾回收机制 1.计数引用机制 就是一个变量、数据结构、对象当没有人引用时,python的会启用垃圾回收机制,将其从内存中删除。 怎么看引用的次数呢?sys模块提供的sys.getrefcount(要查的对象)返回引用次数 import sys a = 1 b = 1 print("删 阅读全文
posted @ 2019-10-16 21:15 张京墨 阅读(177) 评论(0) 推荐(0) 编辑
摘要:1.闭包 简单理解:闭包就是多层函数的嵌套,外层函数的返回值是内层函数的引用。 def out_func(n): num = 100 def in_fucn(*args,**kwargs): # nonlocal num if n % 2 == 0: # 里面没有修改num的值,直接使用可以,如果变 阅读全文
posted @ 2019-10-16 21:14 张京墨 阅读(145) 评论(0) 推荐(0) 编辑
摘要:一:代理池维护的模块 1. 抓取模块Crawl,负责从代理网站上抓取代理 抓取模块 2. 获取代理Getter,负责获取抓取模块返回的值,并判断是否超过存储模块的最大容量。 获取模块 3.存储模块Redis,负责将抓取的每一条代理存放至有序集合中。 存储模块 4.测试模块Tester,负责异步测试每 阅读全文
posted @ 2019-09-26 15:57 张京墨 阅读(536) 评论(0) 推荐(0) 编辑
摘要:# TODO selenium已经被检测出来 import random import re import time from selenium import webdriver from selenium.webdriver.common.by import By from selenium.we 阅读全文
posted @ 2019-09-21 18:19 张京墨 阅读(555) 评论(0) 推荐(0) 编辑
摘要:一. urllib库中将字典转化为url的查询参数 二.请求异常的处理,以及内部的判断逻辑 1.返回的json数据为空:原因是requests的请求对象没有加请求头和cookies import requests from urllib.parse import urlencode def get_ 阅读全文
posted @ 2019-09-19 17:18 张京墨 阅读(7143) 评论(0) 推荐(1) 编辑

点击右上角即可分享
微信分享提示