嵌套格式
某些格式可以采用其他参数,例如格式化字符串的宽度或对齐方式:
>>> '{:.>10}'.format('foo')
'.......foo'
通过在 {}
中嵌入更多 {}
,也可以将它们作为参数提供给 format
:
>>> '{:.>{}}'.format('foo', 10)
'.......foo'
'{:{}{}{}}'.format('foo', '*', '^', 15)
'******foo******'
在后一个例子中,格式字符串'{:{}{}{}}'
被修改为'{:*^15}'
(即“中心和填充*,总长度为 15”),然后将其应用于实际字符串'foo'
,以便以这种方式格式化。
这在事先不知道参数的情况下非常有用,例如在对齐表格数据时:
>>> data = ["a", "bbbbbbb", "ccc"]
>>> m = max(map(len, data))
>>> for d in data:
... print('{:>{}}'.format(d, m))
a
bbbbbbb
ccc