列表生成式:会将所有的结果全部计算出来,把结果存放到内存中,如果列表中数据比较多,就会占用过多的内存空间,可能会导致MemoryError内存错误或者导致程序在运行时出现卡顿的情况
列表生成器:会创建一个列表生成器对象,不会一次性的把所有结果都计算出来,如果需要获取数据,可以使用next()函数来获取,但是需要注意,一旦next()函数获取不到数据,会导致出现StopIteration异常错误,可以使用for循环遍历列表生成器,获取所有数据
需要视情况而定,如果数据量比较大,推荐使用生成器
p
这篇文章主要介绍了python列表生成器迭代器实例解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
列表生成式
例如 有一个列表
a =[2,3,4,5]
需要将列表都加上1
#第一种方法
for i in map(lambda i:i+1,a)
#第二种方法
for index,i in enumerate(a):
a[index] +=1
print(a)
#第三种,简单列表生成式
a = [i+1 for i in a]
p
皮伦奇
紧缩的Python脚本
它没有用C语言编写的原始紧缩速度快,但在其他世界一流的生成器中绝对快。 我将在将来添加多处理。
Usage: pyrunch.py
or
pyrunch.py --mask
Options:
-o Set a Name or Directory for Output File (use -o - for piping the output to aircrack-ng, etc...)
-m