Python 字符串格式化
学习 f-string/format()/%格式化 · 难度:入门 · +10XP
Python 字符串格式化
Python 字符串格式化 — 让输出更专业
学习前的准备
你需要 Python 3.6 或更高版本。打开终端,输入 python 进入交互式解释器。
方法一:f-string(最推荐,Python 3.6+)
f-string 是目前最简洁、最快的字符串格式化方式。在字符串前加一个 f,然后用花括号 {} 直接嵌入变量或表达式。
name = "李四"
age = 20
score = 92.5
print(f"姓名:{name},年龄:{age},成绩:{score}")
print(f"明年{name}就{age + 1}岁了")
pi = 3.1415926
print(f"Pi保留两位小数:{pi:.2f}") # 3.14
print(f"金额:{1234567890:,}元") # 金额:1,234,567,890元
print(f"{'左对齐':<10}|")
print(f"{'居中':^10}|")
方法二:str.format()
print("{}今年{}岁".format("王五", 22))
print("{1}比{0}大".format(10, 20)) # 20比10大
print("{name}的分数是{score:.1f}分".format(name="赵六", score=88.567))
方法三:% 运算符(了解即可)
name = "张三"
age = 25
print("我叫%s,今年%d岁" % (name, age))
# 常用占位符:%s字符串,%d整数,%f浮点数
三种方法对比
| 方法 | Python版本 | 推荐程度 |
|---|---|---|
| f-string | 3.6+ | 最推荐 |
| str.format() | 2.6+ | 推荐 |
| % 运算符 | 所有版本 | 不推荐 |
小结
如果你用的是 Python 3.6+,请优先使用 f-string,它是最现代、最高效的字符串格式化方式。format() 方法在需要动态生成模板时仍然有用。% 运算符的写法了解就好,新项目不用它。