用法:str.format() ,str格式:”..{}…” ,使用{} 代替字符串中的 %
1、使用位置参数
注:位置参数使用{}
,不受顺序约束,只要format
里有相对应的参数值即可,参数索引从0
开始,传入位置参数如果是列表,形式为:(*列表),如下:
#定义一个列表
lis=["周润发","18"]
#定义一个字符串模版
strs="我的名字叫 {},年龄 {}"
strs.format("周润发","18")
#我的名字叫 周润发,年龄 18
#使用列表参数
strs.format(*lis)
#我的名字叫 周润发,年龄 18
#我们调一下参数位置
strs="我的名字叫 {1},年龄{0}"
strs.format(*lis)
#我的名字叫 18,年龄周润发
2、使用关键字参数
注:使用关键字 {参数} ,形式 format(参数 : 值),可传入字典,格式 format(** 字典)
dic={"name":"小黑","age":19}
strs="我的名字叫 {name} ,年龄 {age}"
#传入字典
strs.format(**dic)
#我的名字叫 小黑 ,年龄 19
#传入key,value
strs.format(name="张三丰",age=90)
#我的名字叫 张三丰 ,年龄 90
3、填充与格式化
:[填充字符][对齐方式 <^>][宽度]
'{0:->6}'.format(8)
#填充字符串为 – ,宽度6,右对齐 '------8'
'{0:-<6}'.format(8)
#填充字符串为 – ,宽度6,左对齐 '8------'
'{0:-^6}'.format(8)
#填充字符串为 – ,宽度6,居中对齐 '---8---'
4、精度与进制
#格式化为 二进制
a='{0:b}'.format(34)
print(a) #100010
#格式化为八进制
a='{0:o}'.format(34)
print(a) #42
#格式化为十六进制
a='{0:x}'.format(34)
print(a) #22
#千分位格式化
a='{0:,}'.format(378457414)
print(a) #378,457,414
5、使用索引
str5="我的名字叫 {0[0]} ,年龄 {0[1]}"
lis=["黑",15]
str5.format(lis)
#我的名字叫 黑 ,年龄 15