2

如何使用列表作为参数调用格式函数?

我想做这样的事情:

spacing = "{:<2} "*10
l = ['A','B','C','D','E','F','G','H','I','J']
print spacing.format(l)
4

1 回答 1

4

使用*args格式:

spacing.format(*l)

这告诉 Python 将 的每个元素l作为单独的参数应用到.format()方法中。

请注意spacing,如果您对计数进行硬编码,您的格式最终可能会包含太多或太少的元素;也许使用长度l代替:

spacing = "{:<2} " * len(l)

或用于str.join()消除最后一个空格:

spacing = ' '.join(['{:<2}'] * len(l))

演示:

>>> l = ['A','B','C','D','E','F','G','H','I','J']
>>> spacing = ' '.join(['{:<2}'] * len(l))
>>> spacing.format(*l)
'A  B  C  D  E  F  G  H  I  J '
于 2013-10-13T09:16:11.393 回答