如何使用列表作为参数调用format函数?
我想做这样的事情:
spacing = "{:<2} "*10
l = ['A','B','C','D','E','F','G','H','I','J']
print spacing.format(l)
答案 0 :(得分: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 '