随笔分类 - python基础
摘要:class 类名: def __init__(self,参数1,参数2): self.对象的属性1 = 参数1 self.对象的属性2 = 参数2 def 方法名(self):pass def 方法名2(self):pass对象名 = 类名(1,2) #对象就是实例,代表一个具体的东西 #类名()
阅读全文
摘要:1 # 2 import pickle 3 # dic= {'k1':'v1','k2':'v2','k3':'v3'} 4 # str_dic=pickle.dumps(dic) 5 # print(str_dic) #打印的是bytes类型的二进制内容 6 # 7 # dic2 = pickle
阅读全文
摘要:1.什么是序列化 将原本的字典,列表等内容转换成一个字符串的过程就叫做序列化 2.序列化的目的 1.以某种存储形式使自定义对象持久化 2.将对象从一个地方传递到另一个地方 3.使程序更具维护性 json Json模块提供了四个功能:dumps、loads、dump、load
阅读全文
摘要:1 os.getcwd() 获取当前工作目录,即当前python脚本工作的目录路径 2 os.chdir("dirname") 改变当前脚本工作目录;相当于shell下cd 3 os.curdir 返回当前目录: ('.') 4 os.pardir 获取当前目录的父目录字符串名:('..') 5 o
阅读全文
摘要:import random# # 1.随机小数print(random.random()) #大于0且小于1之间的随机小数print(random.uniform(1,3)) #大于1且小于3的随机小数 # # 2.随机整数print(random.randint(1,5)) #大于1且小于等于5之
阅读全文
摘要:1 %y 两位数的年份表示(00-99) 2 %Y 四位数的年份表示(000-9999) 3 %m 月份(01-12) 4 %d 月内中的一天(0-31) 5 %H 24小时制小时数(0-23) 6 %I 12小时制小时数(01-12) 7 %M 分钟数(00=59) 8 %S 秒(00-59) 9
阅读全文
摘要:def demo(): for i in range(2): yield i g = demo() g1 = (i for i in g) g2 = (i for i in g1) print(list(g1)) print(list(g2)) #执行list(g2),调用g1的值,g1是个生成器,g1里面的值已经被取干净了,所以没有值可以取 def add(n...
阅读全文
摘要:''' 装饰器实现激活生成器 ''' def init(func): #传参得到 func = average def inner(*args,**kwargs): g = func(*args,**kwargs) #g = average() g得到一个生成器 g.__next__() # return g return...
阅读全文
摘要:#移动平均值:类似打靶每打一枪看平均环数 def average(): sum = 0 count = 0 avg = 0 while 1: num = yield avg sum+=num count+=1 avg=sum/count g = average() g.__next__() q=g...
阅读全文
摘要:def generator(): print(123) ret = yield 1#第一个next方法执行完之后,send方法传参数赋值给ret print('-----',ret) print(345) yield 2 g = generator() print(g.__next__()) print(g.send('alex'))
阅读全文
摘要:#监听过滤的效果 def tail(filename): f = open(filename,encoding='utf-8') while 1: line = f.readline() if line.strip(): yield line.strip() q = tail('2019-9-1') for i in q:...
阅读全文
摘要:l=[1,2,3,4,5] a=l.__iter__() # print(next(a)) # print(next(a)) # print(next(a)) # print(next(a)) # print(next(a)) # print(next(a)) #上面的列表长度只有5个,而你多打印了,就会报错。处理的情况如下,就不会报错了 while True: ...
阅读全文
摘要:Python装饰器(decorator)在实现的时候,被装饰后的函数其实已经是另外一个函数了(函数名等函数属性会发生改变),为了不影响,Python的functools包中提供了一个叫wraps的decorator来消除这样的副作用。写一个decorator的时候,最好在实现之前加上functool
阅读全文
摘要:def wrapper1(func): #传入参数inner2 def inner1(): print('之前1') func() print('之后1') return inner1 def wrapper2(func): #传入参数f def inner2(): print('之前2') ...
阅读全文
摘要:import time#引入模块 FLAG = True#用来判定是否需要用来执行装饰器里面的timmer函数 def timmer_out(FLAG):#外层判定函数 def timmer(func): def inner(*args,**kwargs): if FLAG:#true将执行timmer里面的操作 s...
阅读全文
摘要:#编写一个装饰器,为多个函数加上认证功能 #要求登录一次成功之后,后续函数不需要登录 s = False def login(func): def inner(*args,**kwargs): global s if s: ret = func(*args, **kwargs) return ret ...
阅读全文
摘要:#默认参数的陷阱,如果默认参数的值是一个可变的数据类型,每次调用函数时,如果不传参数就会公用这个数据类型的资源 def qq(l=[]): l.append(1) return l print(qq()) print(qq([])) print(qq())
阅读全文
摘要:#处理日志文件 lst = []#用来装日志 f = open('2019-8',mode='r',encoding='utf-8')#读取文件 first = f.readline().strip().split(',')#文件的第一行是属性,转化成列表可迭代提取属性,当做字典的keys for line in f:#for循环读取文件日志 dic={}#创建字典进行对日志整理 ...
阅读全文

浙公网安备 33010602011771号