Python 中的 format() 函数有助于用占位符替换字符串。占位符使用花括号({})定义。最后,返回格式化后的字符串作为输出。
template.format(p0, p1, ..., k0=v0, k1=v1, ...) #Where p&k are either a list of values or combination of both
format() 函数可以接受任意数量的参数,但它会分为两个部分。
1. 位置参数 - 花括号 {index} 内的参数列表,可以通过参数的索引访问。
2. 关键字参数 - 花括号 {key} 内的参数列表,可以通过参数的键访问,例如 type key=value
这里的“模板”是格式代码与参数占位符的组合。
| 参数 | 描述 | 必需/可选 |
|---|---|---|
| p0, p1,... | 位置参数 | 必需 |
| k0, k1,...v0, v1,... | 带值的关键字参数 | 必需 |
此方法的返回值为字符串。我们还可以使用以下格式说明符来格式化数字:
d - 十进制整数
c - 对应的 Unicode 字符
b - 二进制格式
o - 八进制格式
x - 十六进制格式(小写)
X - 十六进制格式(大写)
n - 与 'd' 相同,但使用当前区域设置作为数字分隔符
e - 指数表示法(小写 e)
E - 指数表示法(大写 E)
f - 显示定点数(默认:6)
F - 与 'f' 相同,但将 'inf' 显示为 'INF',将 'nan' 显示为 'NAN'
g - 通用格式,将数字四舍五入到 p 位有效数字(默认精度:6)
G - 与 'g' 相同,但如果数字很大则切换到 'E'
% - 百分比。乘以 100 并在末尾添加 %。
使用对齐方式也可以进行数字格式化
< - 左对齐
^ - 居中对齐
> - 右对齐
= - 强制将符号 (+) (-) 置于最左侧位置
| 输入 | 返回值 |
|---|---|
| 字符串 | 格式化字符串 |
# default arguments
print("Hii {}, your balance is {}.".format("Jhon", 500.322))
# positional arguments
print("Hii {0}, your balance is {1}.".format("Jhon", 500.322))
# keyword arguments
print("Hii {name}, your balance is {blc}.".format(name="Jhon", blc=500.322))
# mixed arguments
print("Hii {0}, your balance is {blc}.".format("Jhon", blc=500.322))
输出
Hello Jhon, your balance is 500.322. Hello Jhon, your balance is 500.322. Hello Jhon, your balance is 500.322. Hello Jhon, your balance is 500.322.
# integer arguments
print("The number is:{:d}".format(567))
# float arguments
print("The float number is:{:f}".format(567.5634278))
# octal, binary and hexadecimal format
print("bin: {0:b}, oct: {0:o}, hex: {0:x}".format(12))
输出
The number is: 567 The number is: 567.5634278 bin: 1100, oct: 14, hex: c
# string padding with left alignment
print("{:5}".format("abc"))
# string padding with right alignment
print("{:>5}".format("abc"))
# string padding with center alignment
print("{:^5}".format("abc"))
# string padding with center alignment
# and '*' padding character
print("{:*^5}".format("abc"))
输出
abc abc abc *abc*
# truncating strings to 3 letters
print("{:.3}".format("caterpillar"))
# truncating strings to 3 letters
# and padding
print("{:5.3}".format("caterpillar"))
# truncating strings to 3 letters,
# padding and center alignment
print("{:^5.3}".format("caterpillar"))
输出
cat cat cat