此系列主要用于记录Python学习过程中查阅的优秀文章,均为索引方式。其中内容只针对本作者一人,作者熟悉了解的内容不再重复记录。
目录
01-列表推导式
列表推导同filter和map的比较
Python专题——五分钟带你了解map、reduce和filter - 知乎 (zhihu.com)
02-元组
元组拆包
Python---元组拆包(Tuple Unpacking)-CSDN博客
# 通过*拆包存储当前不关注的多余变量
m = (1, 2, 3, 's', 'r')
n, b, *_ = m
print(n, b, _) # 1 2 [3, 's', 'r']
具名元组
Python 3.7.1 中 namedtuple 具名元组基本用法详解-CSDN博客
1. 创建一个具名元组需要两个参数,一个是类名,另一个是类的各个字段的名字。后者可以是由数个字符串组成的可迭代对象,或者是由空格分隔开的字段名组成的字符串。
2. 除了从普通元组那里继承来的属性之外,具名元组还有一些自己专有的属性。常用的有_fields 类属性、类方法 _make(iterable) 和实例方法 _asdict()。
03-闭包
函数闭包
闭包 (计算机科学) - 维基百科,自由的百科全书 (wikipedia.org)
Python闭包(Closure)详解 - 知乎 (zhihu.com)
1. 闭包在实现上是一个结构体<因此将其放在数据结构栏>,它存储了一个函数(通常是其入口地址)和一个关联的环境(相当于一个符号查找表)。
2. 闭包跟函数最大的不同在于,当捕捉闭包的时候,它的自由变量会在捕捉时被确定,这样即便脱离了捕捉时的上下文,它也能照常运行。
3. 在编译优化当中,没有捕捉自由变量的闭包可以被优化成普通函数,这样就无需分配闭包结构体,这种编译技巧被称为函数跃升。
4. 闭包的作用
- 作用1:闭包是将外层函数内的局部变量(自由变量)和外层函数的外部连接起来的一座桥梁。
- 作用2:将外层函数的变量持久地保存在内存中。