如何使用python字符串的str.format函数

str.format()是Python中强大的字符串格式化方法,支持位置参数、关键字参数和格式控制。1. 可按顺序填充占位符,如"Hello, {}!".format("World");2. 支持索引或名称指定参数,如"{0} 和 {1}".format("小明", "小红")或"{name} {age}".format(name="小华", age=20);3. 可格式化数字,如"{:.2f}".format(19.5)保留两位小数,"{:.1%}".format(0.875)显示百分比,"{:,}".format(1000000)加千位分隔符;4. 支持对齐与填充,如"{:>10}"实现右对齐。

Python 中的 str.format() 函数是一种灵活且强大的字符串格式化方法,可以将变量插入到字符串中的指定位置。它比传统的 % 格式化更清晰、功能更强,支持位置参数、关键字参数和格式控制。

1. 基本用法:使用位置占位符

在字符串中使用花括号 {} 作为占位符,然后通过 format() 方法传入值。

"Hello, {}!".format("World") # 输出: Hello, World!

"{} + {} = {}".format(2, 3, 5) # 输出: 2 + 3 = 5

如果不指定索引,format 会按顺序填充占位符。

2. 使用索引或名称指定参数

你可以通过索引或自定义名称来更精确地控制参数替换。

"{0} 和 {1} 是朋友。".format("小明", "小红") # 按索引

"{name} 今年 {age} 岁。".format(name="小华", age=20) # 使用关键字

这样即使参数顺序变化,也能正确匹配。

3. 格式化数字和小数

你可以在占位符中添加格式说明符,控制数字的显示方式。

"价格是 {:.2f} 元。".format(19.5) # 保留两位小数 → 19.50

"百分比:{:.1%}".format(0.875) # 显示为百分比 → 87.5%

"{:,}".format(1000000) # 添加千位分隔符 → 1,000,000

4. 对齐与填充文本

可用于格式化输出对齐,比如制作表格或报告。

"|{:>10}|".format("右对齐") # 右对齐,总宽10

"|{:

"|{:^10}|".format("居中") # 居中

"|{:*^10}|".format("标题") # 用 * 填充并居中 → |***标题***|

基本上就这些。掌握 str.format() 能让你的字符串处理更清晰、更可控。虽然现在 f-string(如 f"Hello {name}")更简洁,但 format() 在动态格式或兼容旧版本时依然很有用。不复杂但容易忽略细节。