巢狀格式

某些格式可以採用其他引數,例如格式化字串的寬度或對齊方式:

>>> '{:.>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