Skip to main content
 首页 » 编程设计

python之在python列表之间打印一个新行

2025年05月04日18zhengyun_ustc

我有一个长度可能未知的列表,如下所示:

list = [[1,2], [3,4,5], [6]] 

我有一个打印这些项目的 for 循环,但我也希望能够在两者之间添加一个额外的新行。

1 
2 
 
3 
4 
5 
 
6 

我不希望在最后一个项目之后或第一个项目之前有一个额外的新行。我有一个 for 循环,它打印出行中项目之间的空格。但是,存在 1 个或多个索引为空的情况。在那种情况下,我不想添加额外的新行。我已经设法弄清楚第一个或最后一个索引是否为空以及如何处理它,但不是中间索引。

例如上面的结果也应该可以用这个获得:

list = [[1, 2], [], [3, 4, 5], [6]] 

我不确定确定这一点的最佳方法是什么。

请您参考如下方法:

像这样使用 enumerate():

for i, sub in enumerate(mylist): 
    if i: print()  # If you are using Python 2, remove the parentheses 
    for x in sub: 
        print(x) 

编辑:我有点误解了你的问题。由于您的第二个示例列表具有无效语法,因此我认为这仅意味着两个子列表。 PaulRooney 的评论已经澄清了这一点,因此您可以这样做:

should_print = False 
for sub in mylist: 
    if should_print: print() 
    for x in sub: 
        print(x) 
    should_print = bool(sub)