Python f-strings中{foo:>7f}这类格式控制符的作用是什么?
Python f-string 格式控制符
>7f/>5d含义说明 你提到的冒号后的内容属于f-string的格式规则修饰符,完整结构为 {变量:对齐方式 最小宽度 类型符},各部分含义如下:
1. 基础规则拆解
>:对齐方式标识,代表右对齐(同类标识还有<左对齐、^居中对齐,数值类型默认就是右对齐,这里是显式声明对齐规则)- 紧跟
>后的数字:输出内容占的最小字符宽度,如果变量实际输出长度小于这个值,会在左侧补空格凑到指定宽度;如果实际长度超过这个值,就按实际长度输出,不会截断内容 - 最后的
f/d:你已经了解,是浮点数、整数的类型标识
2. 两个修饰符的具体含义
>7f
表示将浮点数按默认规则(保留6位小数)输出,整体最少占用7个字符宽度,右对齐,宽度不足时左侧补空格。
>5d
表示将整数输出,整体最少占用5个字符宽度,右对齐,宽度不足时左侧补空格。
3. 运行示例
代码:
foo = 2.718 bar = 9 print(f"foo: {foo:>7f}, bar: {bar:>5d}")
输出结果:
foo: 2.718000, bar: 9
可以看到bar的值9左侧补了4个空格,总长度正好是5位,符合>5d的规则。
内容的提问来源于stack exchange,提问作者Essam
相关产品推荐
相关产品推荐

