Python展开列表以打印
如果我有一个列表
lst = ['A', 'B', 'C']
我该怎么做才能把它展开,这样我就可以打印出类似下面的内容
print '%s %s %s' % (*lst) ?
谢谢
7 个回答
7
如果你想按照你说的那样使用字符串格式化,你需要先把列表转换成元组。
>>> l = ['A', 'B', 'C']
>>> print '%s %s %s' % tuple(l)
A B C
不过在这种情况下,我建议你使用类似下面的方式
>>> print " ".join(l)
A B C
8
现在你可以用 format
来代替了:
"{} {} {}".format(*lst) #python 2.7 and newer
"{0} {1} {2}".format(*lst) #python 2.6 and newer
2
这是mgilson回答的简化版本,主要是为了代码比赛的需要。
>>> l = ['A', 'B', 'C']
>>> print(*l)
A B C