字符串格式化的核心目的
- 统一输出规格,避免因进制、格式差异造成误解
- 支持动态填充内容,实现灵活的字符串拼接
format() 方法格式化
- 核心规则
- 接受位置参数、关键字参数,传递到字符串的
{}替换域 - 位置参数与关键字参数结合时,位置参数必须在前
- 接受位置参数、关键字参数,传递到字符串的
- 位置参数用法
- 语法:
"{0}{1}{2}".format(p1, p2, p3) - 示例:
"I love {0}.{1}".format("fishc", "com")→ I love fishc.com
- 语法:
- 关键字参数用法
- 语法:
"{a}{b}{c}".format(a=x, b=y, c=z) - 示例:
"I love {a}.{b}".format(a="fishc", b="com")→ I love fishc.com
- 语法:
- 混合参数用法
- 示例:
"{0}{b}".format("I love ", b="fishc.com")→ I love fishc.com
- 示例:
- 特殊场景
- 打印花括号:用双层
{{}}转义 →"{{0}}".format("test")→ {0} - 格式控制符:
{索引:格式}实现数值格式化- 示例:
"{0:.1f}{1}".format(27.658, "GB")→ 27.7GB - 说明:
.1f表示四舍五入保留1位小数,f为定点数格式
- 示例:
- 打印花括号:用双层
百分号 % 格式化操作符
- 核心规则
- 专用字符串格式化操作符,语法类似C语言
printf - 多参数时需用元组包裹,支持整数、浮点数、进制转换等
- 专用字符串格式化操作符,语法类似C语言
- 常用格式化符号
符号 含义 示例 %c格式化字符及ASCII码 "%c%c%c" % (97,98,99)→ abc%s格式化字符串 "I love %s" % "fishc.com"→ I love fishc.com%d格式化整数 "4+5=%d" % (4+5)→ 4+5=9%o格式化无符号八进制数 "%o" % 10→ 12%x/%X格式化无符号十六进制数(小写/大写) "%x" % 10→a;"%X" %10→A%f格式化定点数,默认6位小数 "%f" % 27.658→ 27.658000%e/%E科学计数法格式化(小写/大写) "%e" %27.658→2.765800e+01%g/%G智能选择 %f或%e格式"%g" %27.658→27.658 - 格式化辅助命令
m.n:m为最小总宽度,n为小数位数 →"%.1f" %27.658→27.7;"%5.1f" %27.658→ 27.7-:左对齐 →"%-10d" %5→ 5+:正数前加正号 →"%+d" %5→ +5#:八进制加0o,十六进制加0x→"%#o" %10→0o12;"%#x" %10→0xa0:用0填充空格 →"%010d" %5→ 0000000005
字符串转义字符
- 用于表示特殊字符,常见转义符:
\n:换行符;\t:制表符(Tab)\':单引号;\":双引号;\\:反斜杠