有什么简洁的表达方式吗:
'{:f};{:f};{:f};{:f};{:f}'.format(3.14, 1.14, 2.14, 5.61, 9.80)
这样就不需要多次写入{:f}?
受figs答案的启发(投票支持):
('{:f};'*5).format(3.14, 1.14, 2.14, 5.61, 9.80)[:-1] # strip the trailing semicolon
您可以使用任何您能想到的好方法来生成字符串,例如使用join
:
';'.join(['{:f}' for _ in range(5)]).format(3.14, 1.14, 2.14, 5.61, 9.80)
这是列表理解中格式的另一个变体。这很好,因为它不需要键入列表的长度。
nums = [3.14, 1.14, 2.14, 5.61, 9.80]
';'.join(['{:f}'.format(n) for n in nums])