【问题标题】:How to print 2 lists vertically next to each other?如何垂直打印 2 个彼此相邻的列表?
【发布时间】:2016-08-30 14:26:19
【问题描述】:

我知道如何垂直打印列表:

for item in items:
    print(item)

输出:

43435
23423

但是我想把另一个列表(称为 items2)放在一起,所以输出是这样的:

43435  a
23423  a

我怎样才能以最简单的方式做到这一点?

编辑:

86947367 banana
 2 10
78364721 apple
 2 6

【问题讨论】:

    标签: python-3.x


    【解决方案1】:

    使用zip:

    list_a = [43435, 23423]
    list_b = ['a', 'b']
    
    for item_a, item_b in zip(list_a, list_b):
        print(item_a, item_b)
    
    >> 43435 a
       23423 b
    

    这可以推广到不同数量的列表,只要您将列表保存在列表中:

    list_a = [43435, 23423]
    list_b = ['a', 'b']
    list_c = ['ca', 'cb']
    
    list_of_lists = [list_a, list_b, list_c]
    
    for a in zip(*list_of_lists):
        print(*a)
    
    >> 43435 a ca
       23423 b cb
    

    【讨论】:

    • 星号代表什么?
    • 这真的很奇怪,我完全按照你的做法做了,4 个列表中只有 2 个在水平线上,另外 2 个在下面。请看上面的编辑。
    • @Mikel.JKK 用于解包,见:stackoverflow.com/documentation/python/4282/…
    • 另外,我交换了(4 个列表中的)顺序,只有最后一个没有进入水平线,我认为这是因为我已将 2 个列表转换为整数。
    • @Mikel.JKK 您必须提供整个(相关)代码,
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-11-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-01-07
    • 2021-07-04
    • 2016-07-24
    相关资源
    最近更新 更多