可以用for和while循环来调用生成器,取里面的值。
比如a=(i for i in range (10)
for i in a:
print(i)
输出为:
0
1
2
3
4
5
6
7
8
9
while True:
print(next(a)
输出为:
0
1
2
3
4
5
6
7
8
9
Traceback (most recent call last):
File "F:/python/2019.6.2/xuexi/6.2/列表生成器.py", line 21, in <module>
print(next(a))
StopIteration
所以用for循环,执行完后不会报错,while会报错。
python3里的range其实就是一个生成器。
原文地址:https://blog.51cto.com/13543767/2415529
时间: 2024-11-08 23:58:12