python中:生成器表达式和列表推导式的比较

l = [2, 3, 5, 7]
l2 = [x ** 2 + 1 for x in l]
it = iter(l2)
print(next(it)) # ?

l[1] = 30
print(next(it)) # ??

以下是生成器表达式

l = [2, 3, 5, 7]
l2 = (x ** 2 + 1 for x in l)
it = iter(l2)
print(next(it)) # ?

l[1] = 30
print(next(it)) # ??

总结:
生成器表达式是现用现生成,列表推导式一次性生成静态数据

猜你喜欢

转载自blog.csdn.net/qq767852841/article/details/81915766