生成器推导式,就是所有元素的一个算法,只能从前向后遍历,被访问过后的元素就会“消失”,包括转换如list()后,生成器本身就空了。
>>> g = (i for i in range(1,6))
>>> g
<generator object <genexpr> at 0x0000000002D53430>
>>> next(g)
1
>>> next(g)
2
>>> list(g)
[3, 4, 5]
>>> g
<generator object <genexpr> at 0x0000000002D53430>
>>> list(g)
[]
>>> lst = [i for i in range(1,6)]
>>> lst
[1, 2, 3, 4, 5]