代码点读机 / Python / format

format Python · 字符串方法

`format` 格式化字符串,可以方便地把变量插入到字符串中,并控制格式(如对齐、小数位数、补零等)。就像小时候玩橡皮泥,把橡皮泥(各种格式的原始数据)往模具(格式化字符串)里一压,出来的成品就是固定的形状(相同的格式)

怎么用

format(值, 格式说明)
或者用字符串的 `.format()` 方法:
"模板字符串 {}".format(值)
以及 f-string:`f"...{变量}..."`。

小例子

# 内置函数 format
print(format(3.14159, ".2f"))   # 保留两位小数
print(format(42, "04d"))        # 补零到4位
print(format("你好", "<10"))    # 左对齐,宽度10
# 字符串方法
print("我是{},今年{}岁".format("小明", 18))
# f-string
名字 = "小明"
年龄 = 18
print(f"我是{名字},今年{年龄}岁")

运行结果

3.14
0042
你好        
我是小明,今年18岁
我是小明,今年18岁

对比:手动拼接字符串

名字 = "小明"
年龄 = 18
print("我是" + 名字 + ",今年" + str(年龄) + "岁")
用 `format` 或 f-string 更清晰。

常见使用场景

1. 格式化数字显示:
价格 = 9.9
print(f"价格:{价格:.2f}元")
2. 生成对齐文本:
for i in range(1, 4):
    print(f"{i:3d} {i*i:5d}")
3. 构造日志信息。

提醒:- f-string 是最现代、最推荐的方式。 - 格式说明语法很丰富,可查文档。 - 注意花括号转义:`{{` 表示输出 `{`。

官方文档:https://docs.python.org/zh-cn/3/library/stdtypes.html#str.format

在代码里遇到不认识的词?打开代码点读机,点一下就懂 → ← Python全部词条