我试图弄清楚当输出不是一个列表时,单行语句是如何工作的。例如,如果我想打印这些匹配 x 到 x+10 的元组,我有以下代码:
[print((i2x, xi2xx)) for i2x, xi2xx in zip(range(1,11), range(11,21))]
哪个输出
(1, 11)
(2, 12)
(3, 13)
(4, 14)
(5, 15)
(6, 16)
(7, 17)
(8, 18)
(9, 19)
(10, 20)
>>> [None, None, None, None, None, None, None, None, None, None]
现在我想我明白 print 语句(我将其视为命令)是在 for 循环中执行的,但我想知道这个带括号的列表None
是否是单行 for 循环的必要输出。用于此的多行 for 循环如下所示:
for i2x, xi2xx in zip(range(1,11), range(11,21)):
print((i2x, xi2xx))
仅输出
(1, 11)
(2, 12)
(3, 13)
(4, 14)
(5, 15)
(6, 16)
(7, 17)
(8, 18)
(9, 19)
(10, 20)
我是否遗漏了有关括号如何在 oneline 语句中工作的内容?有没有办法只输出没有列表的打印语句None
?