Python 字符串格式化方法记录

字符串部分内容为指定变量的值

1. f"str"

示例:

a = 3.1415
print(f"result: {
      
      a:+0>7.2f}")
>>>
result: +003.14

解释:
  除变量名其余都可省略

f"result: {
      
      [a 变量名]:[+ 显示正数符号][0 补位字符][> 对齐方式][7 宽度][.2 保留小数位数][f 数据类型]}"
对齐方式 < 左对齐
> 右对齐
^ 居中对齐
= 正负号左对齐,数值右对齐
数据类型 c 整型对应的Unicode字符
s 字符串
d 整型
f 浮点型
% 百分数
o 八进制
x/X 十六进制
e/E 指数表示
g/G 保留6位有效数字,整数部分>=7位用指数表示

补充:
(1)千分符

a = 123456789
print(f"result: {
      
      a:*^20,.2f}")
print(f"result: {
      
      a:*^20_.2f}")
>>>
result: ***123,456,789.00***
result: ***123_456_789.00***

2. “str”.format()

示例:

a = 3.14
print("result: {0:x>10.2%}, {0}".format(a))
>>>
result: xxx314.00%, 3.14

解释:
  格式部分用法和第一种方法一致,当每个 {} 对应一个变量的时候可忽略索引,例如 “{}{}”.format(a, b)

"result: {[0 变量索引][:x>10.2% 格式]}".format(a)

3. “str”%()

示例:

a = 3.14
b = 2.33
print("result: %06.2f, %+6.2f" % (a, b))
>>>
result: 003.14,  +2.33

解释:

"%[0 格式符][6 宽度][.2 保留小数位数][f 数据类型]"
格式符 - 左对齐
0 右对齐并用0补位
+ 右对齐且正数前面显示+
空格 右对齐且正数前面显示空格(用于与负数对齐)

补充:
(1)保留小数位数
  用 * 和后面的参数设置小数位数

a = 3.14
b = 2.33
print("result: %.*f, %+6.*f" % (2, a, 3, b))
>>>
result: 3.14, +2.330

猜你喜欢

转载自blog.csdn.net/weixin_43605641/article/details/127964759