官方文档
https://docs.python.org/zh-cn/3.10/library/stdtypes.html#index-33
解释说明
一种字符串格式化的语法, 基本用法是将值插入到%s占位符的字符串中。
%%,表示输出一个%
%s,表示格式化一个对象为字符
"%±(正负号表示)3(数字表示字符串的长度)s"%(取代s的字符串)
%s string型 表示格式化一个对象为字符 "%s1"%S2 s1放置的是一个字符串(格式化字符串) S2放置的是一个希望要格式化的值
代码示例
string = "python" # 类型为字符串
# 输出的打印结果为 string=python
print("string=%s" % string)
# 输出的打印结果为 string=python(数字3的意思是:字符串的长度为3。当字符串的长度大于3时,按照字符串的长度打印出结果)
print("string=%3s" % string)
# 输出的打印结果为 string= python(数字8的意思是:字符串的长度为8。当字符串的长度小于8时,默认在字符串的左侧填补空格)
print("string=%8s" % string)
# 输出的打印结果为 string= python(当字符串的长度小于8时,在字符串的左侧填补空格,使得字符串的长度为8)
print("string=%+8s" % string)
# 输出的打印结果为 string=python(当字符串的长度大于3时,按照字符串的长度打印出结果)
print("string=%+3s" % string)
# 输出的打印结果为 string=python (当字符串的长度小于8时,在字符串的右侧填补空格,使得字符串的长度为8)
print("string=%-8s" % string)
# 输出的打印结果为 string=python(当字符串的长度大于3时,按照字符串的长度打印出结果)
print("string=%-3s" % string)
# 小数点后的数字表示截取的字符串长度
# 输出的打印结果为 string=pyt(%.3s的意思是:截取字符串的前3个字符,当截取字符串的字符长度大于字符串时,输出的结果是整个字符串)
print("string=%.3s" % string)
# 输出的打印结果为 string=python(当截取字符串的字符长度大于字符串时,输出的结果是整个字符串)
print("string=%.10s" % string)
# 先是根据小数点后面的数字b截取字符串,当截取的字符串长度小于a时,需要在字符串的左侧填补空格,使得字符串的长度变为a
print("string=%a.bs" % string) # 输出的打印结果为 string='python'.bs
print("string=%8.3s" % string) # 输出的打印结果为 string= pyt
# 输出的打印结果为 string= pyt(%*.*s表示精度, 两个*的值分别由%string前面被两个逗号隔开的数值来指定)
print("string=%*.*s" % (6, 3, string)) # 输出的打印结果为 string= pyt
# 当右边的参数为一个字典(或其他映射类型)时,字符串中的格式 必须 包含加圆括号的映射键,对应 '%' 字符之后字典中的每一项。 映射键将从映射中选取要格式化的值
# 输出的打印结果为 01_Python has 002 quote types.
print('%(language)s has %(number)03d quote types.' % {'language': "01_Python", "number": 2})