06 2021 档案

摘要:一、匿名函数作用是简化书写,格式为lambda X:X**2,X为入参,X**2为函数体,翻译成函数即为如下: def fun(X): return X**2 二、常与匿名函数搭配的内置函数:map、reduce、filter、sorted sorted:可对所有可迭代对象进行排序,返回1个新列表, 阅读全文
posted @ 2021-06-16 14:25 只管去做-王炸 阅读(864) 评论(0) 推荐(0)
摘要:一、中间件可以有如下5个方法:process_request、process_view、process_exception、process_template_render、process_response 二、process_request、process_view方法按照注册顺序执行,proces 阅读全文
posted @ 2021-06-16 10:07 只管去做-王炸 阅读(48) 评论(0) 推荐(0)
摘要:一、forms组件对用户输入内容进行格式校验 二、局部钩子:Form子类中定义clean_()开头的方法,对1个字段进行校验,校验通过数据以字典形式存在clean_data字段中,错误信息以字典形式存在errors对象中,通过errors.as_data获取错误信息 三、全局钩子:Form子类中重写 阅读全文
posted @ 2021-06-15 17:39 只管去做-王炸 阅读(141) 评论(0) 推荐(0)
摘要:一、使用xlwt、pandas进行excel文件读写,高版本python不支持xlrd读操作 二、实例: import xlwtimport pandasrbook = pandas.read_excel("student_score.xlsx")rbook["总分"] = ""res = rboo 阅读全文
posted @ 2021-06-15 15:31 只管去做-王炸 阅读(95) 评论(0) 推荐(0)
摘要:一、使用xml.etree.ElementTree、xml.tree.cElementTree进行解析,推荐使用后者,效率更高 二、实例: from xml.etree import cElementTree as ET# 获取对象element = ET.parse("demo.xml")prin 阅读全文
posted @ 2021-06-09 10:34 只管去做-王炸 阅读(65) 评论(0) 推荐(0)
摘要:一、dump和dumps都能实现序列化:将对象转换成可存储或者可传输格式(流)的过程,即对象转换成json数据 二、load和loads都能实现反序列化:将文件内容或者流转换成对象的过程,即json数据转换成对象 三、dump、load针对于文件操作,dumps、loads针对于内存对象操作 四、实 阅读全文
posted @ 2021-06-08 11:17 只管去做-王炸 阅读(223) 评论(0) 推荐(0)
摘要:一、使用CSV模块读写文件,参数delimiter指定分隔类型,默认","分隔 二、参数newline保证写入的文件没有空行 三、实例: import csvwith open("book_in.csv", encoding='utf8') as rf: reader = csv.reader(rf 阅读全文
posted @ 2021-06-08 10:45 只管去做-王炸 阅读(80) 评论(0) 推荐(0)
摘要:一、反射:使用字符串来访问类中的方法或者变量 二、3个方法 getattr():获取属性或者方法的内存地址 hasattr():判断是否有该属性或者方法 setattr():设置属性或者方法 三、实例: class A: def __init__(self, a, b): self.a = a se 阅读全文
posted @ 2021-06-08 09:28 只管去做-王炸 阅读(42) 评论(0) 推荐(0)
摘要:一、引用计数器为主,标记清除和分代回收为辅,加上缓存机制 二、通过调用析构函数进行无引用对象的内存回收 三、析构函数实例: class A: def __del__(self): print(" in __del__")a = A()b = A() 阅读全文
posted @ 2021-06-07 14:47 只管去做-王炸 阅读(89) 评论(0) 推荐(0)
摘要:一、int、string、list这些基本类型的大小比较都是基于如下方法实现:__lt__;__gt__;__le__;__ge__;__eq__;__nq__,同理,类要实现比较功能需要实现这些方法 二、使用装饰器functools.total_ordering可以简化上诉实现的方法 三、实例: 阅读全文
posted @ 2021-06-04 17:19 只管去做-王炸 阅读(63) 评论(0) 推荐(0)
摘要:一、提高代码重用率,类似于装饰器作用,减少重复代码,提高代码可读性 二、实现上下文管理的两种方式:①类中实现__enter__和__exit__方法;②使用装饰器@contextlib.contextmanager 三、上下文管理的流程:先调用____enter__方法,再调用自身的方法,最后调用_ 阅读全文
posted @ 2021-06-04 11:31 只管去做-王炸 阅读(154) 评论(0) 推荐(0)
摘要:一、类在实例化的过程中会消耗较多的内存,在类中定义__slots__属性,指定该类只能拥有的属性,以减小内存消耗 二、动态绑定属性实例: class A: def __init__(self, name, age, level): self.name = name self.age = age se 阅读全文
posted @ 2021-06-04 10:20 只管去做-王炸 阅读(59) 评论(0) 推荐(0)
摘要:一、先调用__new__方法创建空的对象 二、再调用__init__方法进行对象进行实例化 三、有特殊类会使用__new__方法进行对象实例化,例如:tuple 四、实例: class A: def __new__(cls, *args, **kwargs): return super().__ne 阅读全文
posted @ 2021-06-04 09:14 只管去做-王炸 阅读(140) 评论(0) 推荐(0)
摘要:位:bit,二进制0或1表示 字节:Byte,一个字节由8位二进制数组成,即8bit 字符:不同编码格式表示的字节长度不一样(ASCII码、UTF8、Unicode编码) 阅读全文
posted @ 2021-06-03 15:33 只管去做-王炸 阅读(801) 评论(0) 推荐(0)
摘要:为提高IO执行效率,会将数据缓存到缓冲区中,达到一定的量之后再写入磁盘文件中,默认为磁盘块设备(block)的大小,例如4096字节,也可以自定义进行设置 一、全缓冲:超过缓冲区时才会将数据写入磁盘文件 # 缓冲区大小为自定义的8192字节 f = open('b.txt', 'a+', buffe 阅读全文
posted @ 2021-06-03 15:18 只管去做-王炸 阅读(205) 评论(0) 推荐(0)
摘要:一、系统默认的编码格式为utf8 二、读写文件时通过参数encoding='utf8'指定编码格式,否则文件在本地打开时会乱码(与系统默认编码不符,参考第1条) 三、实例①,设置编码格式为utf8,本地打开和程序读取都展示正常,无乱码: text = '我是XX,我爱python'f = open( 阅读全文
posted @ 2021-06-03 10:31 只管去做-王炸 阅读(258) 评论(0) 推荐(0)
摘要:一、根据用户传递的参数,动态修改装饰器的入参 二、实例: import time,logging,randomdef timeout(t): def outter(func): def inner(*args, **kwargs): t0 = time.time() res = func(*args 阅读全文
posted @ 2021-06-02 16:47 只管去做-王炸 阅读(126) 评论(0) 推荐(0)
摘要:一、带参数装饰器是生产装饰器的工厂,返回的是装饰器实例;而装饰器内部返回的是被装饰函数的实例 二、实例: def type_assert(*ty_args, **kwargs): def outter(func): def inner(*args, **kwargs): print(*ty_args 阅读全文
posted @ 2021-06-02 14:53 只管去做-王炸 阅读(84) 评论(0) 推荐(0)
摘要:一、使用装饰器可以提高重用性,使用缓存可以提高执行效率 二、实现实例: def outter(func): cache = {} def inner(*args): if cache.get(args): res = cache.get(args) return res res = cache[ar 阅读全文
posted @ 2021-06-01 10:57 只管去做-王炸 阅读(129) 评论(0) 推荐(0)
摘要:一、装饰器是一种特殊的闭包函数,内部函数引用外部函数中的变量或者函数,形成闭包 二、装饰器实例: from functools import wrapsdef outter(func): ####调用func.__name__ 和func.__doc__时打印的是被装饰函数而不是inner @wra 阅读全文
posted @ 2021-06-01 10:42 只管去做-王炸 阅读(84) 评论(0) 推荐(0)
摘要:一、可迭代对象基于islice方法实现切片操作 二、islice实现实例: print(list(islice(range(1, 10), 2, 7, 2))) 三、自定义切片方法实现实例: def my_islice(iterable, start, end, step=1): tmp = 0 f 阅读全文
posted @ 2021-06-01 08:56 只管去做-王炸 阅读(60) 评论(0) 推荐(0)