[英]Pythonic way to print 2D list -- Python
我有一個這樣的二維字符列表:
a = [['1','2','3'],
['4','5','6'],
['7','8','9']]
將列表作為一個整體打印的最pythonic 方式是什么? 即沒有逗號或括號:
123
456
789
有很多方法。 可能是str.join
映射的str.join
:
>>> a = [['1','2','3'],
... ['4','5','6'],
... ['7','8','9']]
>>> print('\n'.join(map(''.join, a)))
123
456
789
>>>
我認為最好的方法是使用print
功能。 使用print
功能,您不需要任何類型的連接和轉換(如果所有對象都不是字符串)。
>>> a = [['1','2','3'],
... ['4', 5, 6], # Contains integers as well.
... ['7','8','9']]
...
>>> for x in a:
... print(*x, sep='')
...
...
123
456
789
如果您使用的是 Python 2,則可以使用from __future__ import print_function
導入打印函數。
像這樣:
import os
array = [['1','2','3'],
['4','5','6'],
['7','8','9']]
print(os.linesep.join(map(''.join, array)))
如果您正在尋找Pythonic ,那么您肯定需要理解生成器:
print('\n'.join(''.join(i) for i in array))
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.