标签:内存 通过 生成 generator 一个 直接 for循环 对象 tor
通过列表生成式,我们可以直接创建一个列表。但是,受到内存的限制,列表的容量肯定是有限的。
在python中,有种一边循环一边计算的机制,称为生成器,generator,从而节省大量的空间。
创建一个generator,第一种方法很简单,把列表生成式的[]改成()就可以了。
L = [x*x for x in range(1,11)] 改为
g = (x*x for x in range(1,11))
得到的g为一个generator,如果需要获得generator的值我们可以用过next()函数。
generator保存的是算法,每次调用next(g)就会出现下一个元素的值,直到抛出StopIteration的错误。
因为generator是可迭代对象,所以正确的方法是用for循环来处理generator。
for i in g :
print i 也可以将所有元素遍历出来。
标签:内存 通过 生成 generator 一个 直接 for循环 对象 tor
原文地址:https://www.cnblogs.com/wajsq/p/8710279.html