【问题标题】:What does {foo:>7f} do in Python f-strings?{foo:>7f} 在 Python f 字符串中做了什么?
【发布时间】:2021-11-13 16:03:31
【问题描述】:

尤其是,这超出了我的想象:

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

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

请注意,我明白什么

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

会。

【问题讨论】:

  • 在python3.9+中可以缩短为f"{=foo:>7f} {=bar:>5f}":P
  • 你看the docs了吗?
  • 是的,但我听不懂。尽管由于答案我现在明白了,但我仍然觉得措辞让我感到困惑。
  • @Joran 我认为你在错误的地方有平等。 f"{foo=:>7f} {bar=:>5f}"
  • 哈哈,哎呀:P 谢谢

标签: python string f-string


【解决方案1】:

这意味着来自{foo:>7f} 的结果字符串的宽度至少应为 7,这意味着如果它的长度为 4 个字符/数字,那么将在其左侧附加空格。

>>> 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。

【讨论】:

    猜你喜欢
    • 2020-11-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-05-18
    • 2019-03-27
    • 2020-04-26
    • 2016-04-10
    • 1970-01-01
    相关资源
    最近更新 更多