Print multidimensional list in python3
我正在寻找一种以特定方式打印多维列表的方法。这就是我列满int的列表的样子。
1 | [[1,2,3],[4,5,6]] |
或
1 | [[1,2,3,4,5,6]] |
我想在列表中的两个"大"元素之间用空格和逗号打印每个元素。所以在我的例子中,输出是:
1 | 1 2 3, 4 5 6 |
和
1 | 1 2 3 4 5 6 |
我使用python 3.4.2
1 2 3 4 5 6 7 8 9 | In [78]: L = [[1,2,3],[4,5,6]] In [79]: ', '.join([' '.join([str(i) for i in subl]) for subl in L]) Out[79]: '1 2 3, 4 5 6' In [80]: L = [[1,2,3,4,5,6]] In [81]: ', '.join([' '.join([str(i) for i in subl]) for subl in L]) Out[81]: '1 2 3 4 5 6' |
1 2 3 4 5 6 7 8 9 | ls = [[1, 2, 3, 4], [5, 6, 7, 8]] for n in range(0, len(ls)): for m in range(0, len(ls[n])): print(str(ls[n][m]) + ' ', end='') if n < (len(ls)-1): print(', ', end='') else: print('') |
1 2 3 4 5 6 | >>> l = [[1, 2, 3], [4, 5, 6]] >>> ', '.join(map(lambda x: ' '.join(map(str, x)), l)) '1 2 3, 4 5 6' >>> l = [[1, 2, 3, 4, 5, 6]] >>> ', '.join(map(lambda x: ' '.join(map(str, x)), l)) '1 2 3 4 5 6' |
使用
1 2 | l = [[1,2,3],[4,5,6]] print ', '.join([' '.join(map(str, i)) for i in l]) |
输出:
1 | 1 2 3, 4 5 6 |
注意:在python 3中,您需要用括号调用