如何将列表中的列表迭代到列中?

时间:2017-11-15 05:22:55

标签: python list loops for-loop

假设我有一个分为3个列表的数字列表:

numbers = [[0,1,2], [3,4,5], [6,7,8]]

我想迭代每个3个列表并将它们分成列:

0  1  2
3  4  5
6  7  8

我该怎么做呢? 到目前为止,我只能打印出1列:

for column in numbers[0:3]:
    column1 = column[0]
    print( column1 )

4 个答案:

答案 0 :(得分:1)

您应该使用两个循环,一个用于行,另一个用于列。在Python 3中,它看起来像这样:

for i in range(3):
    for j in range(3):
        print(numbers[i][j], end=' ') # print a single value in same line
    print()                           # print line break after each row

答案 1 :(得分:0)

您只需使用代码并添加

即可
column1 = column[0,:]

结果:[0,1,2] 或

column1 = column[:,0]

结果:[0,3,6]

答案 2 :(得分:0)

我认为您可以尝试以下方法:

for n in numbers:
    for i in n:
        print(i, end=" ")
    print()

第一个循环遍历您的列表,第二个循环遍历子列表中的每个元素。使用“结束”,您可以在每个元素后指定要打印的内容。默认情况下,它是一个新行。通过在第二个循环后使用print(),您可以在不同的行上打印子列表中的元素。 希望我的解释很清楚。

答案 3 :(得分:0)

这在python 2.7中适用于我

i=0
for column in numbers[0:3]:
     print column[i],column[i+1],column[i+2]