遍历
定义一个生成器列表
a = [(i for i in range(10))]
使用for遍历
for i in a:
print(i) # <generator object <genexpr> at 0x0000014D0579A888>
但是输出的结果并不是我们想象的哪像,而是输出了一个生成器
- 原因:
在定义a时,并不是直接使用[]
的列表推导式,也不是使用()
的生成器,而是定义了一个列表,列表中的一个元素是一个生成器. - 正确遍历写法:
for i in a:
for j in i:
print(j, end=" ") # 0 1 2 3 4 5 6 7 8 9
或者
for i in a[0]:
print(i, end=" ") # 0 1 2 3 4 5 6 7 8 9