【发布时间】:2018-06-01 07:07:09
【问题描述】:
我有一个包含元组的列表:
my_list = [('a', 1), ('b', 2), ('c', 3)]
当我想使用 inline for 循环打印每个列表项时:
[print(i) for i in my_list]
我明白了:
('a', 1)
('b', 2)
('c', 3)
[None, None, None]
为什么输出还包含 [None, ...] 语句?
【问题讨论】:
-
因为
print(i)返回None -
如果您想打印列表,只需执行
print([i for i in my_list])` -
感谢您的回答!如果我使用
print([i for i in my_list])我得到[('a', 1), ('b', 2), ('c', 3)],但不是逐行打印?注意:我使用 Python 3.x 和 Jupyter Notebook。 -
@ArpitSolanki 为什么?您的列表组合与简单地通过
print(*my_list)延迟列表相同。用换行符分解列表就可以了:print(*my_list,sep="\n")- 查看答案。
标签: python-3.x list tuples