8.字符串格式化

一、使用 “ % ” 符号进行格式化

%s :表示 字符串

%d :表示 十进制 整数

%f :表示 浮点数

1
2
3
info='我叫%s,今年是%d年,还有%f元'%('刘德华', 2020, 19.8)

print(info) # 我叫刘德华,今年是2020年,还有19.800000元

可以使用 %09d 对不足部分进行不 0

0 :代表 要补位的符号,如果不写,默认为 空格

9 :代表 输出的 位数, 不写则不会进行补位。

1
2
3
4
5
6
7
print('税前薪资:%09d元'%(19))
print('税前薪资:%9d元'%(1900))
print('税前薪资:%d元'%(1900))

税前薪资:000000019元
税前薪资: 1900
税前薪资:1900

如果为小数时,可以使用 .2 表示需要 保留的小数位

1
2
3
4
5
6
7
print('税前薪资:%012.2f元'%(19.8864))
print('税前薪资:%12.2f元'%(19.8864))
print('税前薪资:%f元'%(19.8864))

税前薪资:000000019.89
税前薪资: 19.89
税前薪资:19.886400

使用 % 作为格式化符号时,输出结果默认为 右对齐,如果希望 左对齐 则需要使用补位符改为 -

1
2
3
4
5
6
7
print('税前薪资:%-12.2f元'%(19.8864))
print('税前薪资:%12.2f元'%(19.8864))
print('税前薪资:%f元'%(19.8864))

税前薪资:19.89
税前薪资: 19.89
税前薪资:19.886400

二、使用 “ format ” 进行格式化

基本格式:字符串.format(参数,参数,…)

字符串中使用 {} 作为占位符,占位符内填写 format 中的元素 下标(下标从 0 开始)

1
2
3
4
s = "PYTHON"
a = "你好"

print("{0}".format(s,a)) # 你好

也可以通过 字典 的形式进行赋值

1
print("{HELLO}".format(HELLO= '你好'))    # 你好

可以对每个 参数 单独设置格式。

格式:{<参数序号>: <格式控制标记>}

:填充对齐宽度.精度类别
补位填充符号< 左对齐 > 右对齐 ^ 居中对齐输出的宽度数字千位分隔符小数的精度或字符串最大长度整数类别
1
2
3
print("{HELLO:-^30,.3f}".format(HELLO= 12312345.67890))

--------12,312,345.679--------

三、使用 “ f ” 进行格式化

f 格式化和 format 格式化 参数相同。

1
2
3
4
int1 = 12312345.67890
print(f"{int1:-^30,.3f}")

--------12,312,345.679--------

三组大括号嵌套,可以让格式化输出中有 大括号