字符串格式化
问题引入:拼接XX今年XX岁
方法一:
name = '小明'
age = 19
message = name + '今年' + str(age) + '岁'
print(message)
方法二:字符串格式占位符
-
语法:包含格式占位符的字符串 % (数据1, 数据2, 数据3, …)
-
注意:a.数据必须和占位符保持一致 b.当只需要一个数据的时候,()可以省略
-
%s - 字符串 (任何类型的数据都可以使用%s占位)
-
%d - 整数
-
%f - 浮点数
-
%.Nf - 精确到小数点第几位
moneny = 15151.9879 message = '%s今年%d岁, 月薪:%.2f' % (name, age, moneny) print(message)
方法三:f-string
message = f'{name}今年{age}岁, 月薪:{moneny}'
print(message)
注:格式优先顺序 :填充, 格式 , %
num = 10
message = f"{num * 10}ha"
print(message)
-
格式1: :.Nf - 控制浮点数保留n位小数
message = f'月薪:{moneny:.2f}' print(message)
-
格式2: :字符>长度 - 将数据通过前面加指定字符填充到指定长度
num = 1 message = f'学号:{num:*>4}' print(message) # 学号:***1 message = f'学号:{num:*>4}' print(message) # 学号:1*** num = 22 message = f'学号:{num:a>4}' print(message) # 学号:aa22 message = f'学号:{num:a<4}' print(message) # 学号:22aa message = f'学号:{num:a>6.2f}' print(message) # 学号:a22.00
-
常用逗号数值格式(例:1000,000,000,000)
money = 18275000 message = f'{moneny:,}' print(message) # 18,275,000
-
百分比形式
num = 0.45 message = f'{num:.2%}' print(message) # 45.00% message = f'{num:a>8.2%}' print(message) # aa45.00%