替换字段由三部分组成,其中每个部分都是可选的:字段名、转换标志、格式说明符
一、替换字段名——指定字段值
1、关键字参数+顺序
>>> "{参数1}{}{参数2}{}".format(1,2,参数1=4,参数2=3) ‘4132‘
2、关键字参数+索引
>>> "{参数1}{1}{参数2}{0}".format(1,2,参数1=4,参数2=3) ‘4231‘
3、除值本身以外,也可以访问其组成部分
>>> name = ["张三","李四"] >>> "我的名字叫{名字[1]}".format(名字=name) ‘我的名字叫李四‘
二、基本转换——指定字段格式
!格式
>>> "{字段!s}\n{字段!r}\n{字段!a}".format(字段="π") "π\n‘π‘\n‘\\u03c0‘"
三、宽度、精度和千位分隔符
设置浮点数(或其他更具体的小数类型)的格式时,默认在小数点后面显示6位小数,并根据需要设置字段的宽度,而不进行任何形式的填充。当然,这种默认设置可能不是你想要的,在这种情况下,可根据需要在格式说明中指定宽度和精度。
1、宽度
宽度是用整数定义的,如下所示:
>>> "{num:10}".format(num=3) ‘ 3‘ >>> "{num:10}".format(num=‘abc‘) ‘abc ‘ >>>
可以看到,数和字符串的对齐方式不同。对齐方式将在下一节介绍。
2、精度
精度也是用整数定义的,但需要在前面加上一个表示小数点的句号:
>>> import math >>> "π = {字段:.2f}".format(字段=math.pi) ‘π = 3.14‘ >>> "π = {字段:.3f}".format(字段=math.pi) ‘π = 3.142‘
也可以同时指定精度和宽度
>>> "π = {字段:10.3f}".format(字段=math.pi) ‘π = 3.142‘
其他类型也可以指定精度-不常用
>>> "{:.5}".format(‘只截取前五位‘) ‘只截取前五‘
3、千分位分隔符
使用逗号来指出需要添加千分位分隔符
>>> "{:,}".format(123000123000) ‘123,000,123,000‘