首页 文章

将多个列表中的元素作为组合线打印

提问于
浏览
0

我已将多个文件中的数据合并到一个列表列表中 . 每个单独的列表代表文件中找到的行 .

Final_List = [['line1', 'line2', 'line3'], ['line1', 'line2', 'line3'], ['line1', 'line2', 'line3', 'line4']]

我想要做的是循环遍历列表并将各个线组合在一起(使用制表符间距)并打印它们 .

所以这样的事情:

new_line_ 1 = line1\tline1\tline1
new_line_4 = \t\tline4

基本上,获取第一个列表的第一个元素,并将其与第二个列表的第一个元素组合,由制表符分隔,依此类推 . 但是,如果一个列表比另一个列表大 - 为其他列表的缺失行添加\ t .

什么是最好的方法来解决这个问题?

我正在考虑更改前两个列表并将\ t添加到每个元素并添加额外的\ t以使它们与list3的大小相同 .

但我觉得应该有更好的方法来做到这一点 .

1 回答

  • 10

    itertools.zip_longest诀窍!

    result = itertools.zip_longest(*Final_List, fillvalue='\t')
    # result is a generator
    result = ['\t'.join(r) for r in result]
    

相关问题