{foo:>7f} 在 Python f-strings 中做什么?

What does {foo:>7f} do in Python f-strings?

特别是,这超出了我的理解范围:

print(f"foo: {foo:>7f}, bar: {bar:>5d}")

我可以想象 f 表示浮点数,d 表示整数,但我不太明白 >7f>5d 的作用。

注意我明白了什么

print(f"foo: {foo}, bar: {bar}")

会。

这意味着从 {foo:>7f} 得到的字符串的宽度至少应为 7,这意味着如果它的长度为 4 characters/digits,则将在其左侧附加空格。

>>> foo = 1234
>>> bar = 100
>>> f"foo: {foo:>7d}, bar: {bar:>5d}"
'foo:    1234, bar:   100'

注意每个数字前都有空格。

>>> f"foo: {foo:>4d}, bar: {bar:>5d}"
'foo: 1234, bar:   100'

请注意第一个数字不受影响,因为它的宽度为 4。