【发布时间】:2025-12-30 10:15:10
【问题描述】:
我已经尝试过以下代码:
result = (x for x in range(3))
for y in result:
print(y)
我得到以下输出:
0
1
2
但是当我使用这段代码时:
result = (print(x) for x in range(3))
for y in result:
print(y)
我得到以下输出:
0
None
1
None
2
None
谁能解释一下,为什么这个 None 在第二个代码中输出?
【问题讨论】:
-
None是生成器内部对print的调用的返回值。
标签: python expression generator