列表理解返回值加上 [None, None, None],为什么? [复制]

2024-01-12

我正在学习理解力。我得到了 print(x) 部分(我想。它打印了通过“in”测试的 x 的值),但为什么它之后还返回 None 列表?

>>> g
['a', 'x', 'p']

>>> [print(x) for x in g]
a
x
p
[None, None, None] #whats this? 

print是一个函数(在Python3中)。它会在屏幕上打印一些内容,但是returns None.

在Python2中,print是一个声明。[print(x) for x in g]会引发 SyntaxError,因为列表推导中只能使用表达式,而不能使用语句。函数调用是一个表达式,这就是 Python3 中允许它的原因。但正如你所看到的,使用起来并不是很有用print在列表理解中,即使是允许的。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

列表理解返回值加上 [None, None, None],为什么? [复制] 的相关文章

随机推荐