gpt4 book ai didi

python - 在 `for` 中使用 `print()` 会在 Python 3.x 上生成生成器吗?

转载 作者:太空宇宙 更新时间:2023-11-04 07:00:24 25 4
gpt4 key购买 nike

<分区>

为什么以及如何运作?例如,我正在写一个这样的列表理解:

>>> a = (10, 30, 20)
>>> print([q for q in a])
[10, 30, 20]

现在,如果我删除 [],这也会起作用,但是:

>>> a = (10, 30, 20)
>>> print(q for q in a)
<generator object <genexpr> at 0x7fe527d1dca8>

Python在这里做一个生成器吗?如果我在没有 print() 的情况下执行此操作:

>>> a = (10, 30, 20)
>>> b = q for q in a

File "<input>", line 1
b = q for q in a
^
SyntaxError: invalid syntax

我正在考虑因为 (q for q in a) 会生成一个生成器,但这是不可能的,但是我没有使用两对 ()喜欢:

>>> a = (10, 30, 20)
>>> print((q for q in a)) # here is two pair of `()`
<generator object <genexpr> at 0x7fe527d1dca8>

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com