Python3之字符串格式化format函数详解(下)

时间:2022-09-12 15:12:26

格式限定符

format通过丰富的的“格式限定符”(语法是 {}中带:号)对需要格式的内容完成更加详细的制定。

进制转换

我们可以再限定符中制定不同的字符对数字进行进制转换的格式化,进制对应的表格:

字符 含义
b 二进制
c Unicode 字符
d 十进制整数
o 八进制数
x 十六进制数,a 到 f 小写
X 十六进制数,A 到 F 大写
N = 99 print('{:b}'.format(N)) print('{:c}'.format(N)) print('{:d}'.format(N)) print('{:o}'.format(N)) print('{:x}'.format(N)) print('{:X}'.format(N)) 

示例结果:

1100011
c
99
143
63
63

填充与对齐

:号后面带填充的字符,只能是一个字符,不指定的话默认是用空格填充,且填充常跟对齐一起使用,^<>分别是居中、左对齐、右对齐,后面带宽度。

N = 99 print('{:>8}'.format(N)) print('{:->8}'.format(N)) print('{:-<8}'.format(N)) print('{:-^8}'.format(N)) 

示例结果:叉车租赁

      99
------99
99------
---99---

精度

:号后面设置精度(以.开始加上精度),然后用f结束,若不是设置,默认为精度为6,自动四舍五入,可带符号显示数字正负标志。

N = 99.1234567 NN = -99.1234567 print('{:f}'.format(N)) print('{:.2f}'.format(N)) print('{:+.2f}'.format(N)) print('{:+.2f}'.format(NN)) 

示例结果:

99.123457
99.12
+99.12
-99.12

转义

我们可以使用大括号 {} 来转义大括号。

p = 'Python' S = 'I like {}, and {{0}}'.format(p) print(S) 

示例结果:

I like Python, and {0}