<分区> 分区>
为什么以及如何运作?例如,我正在写一个这样的列表理解:
>>> 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>
