python format函数
语法
它通过**{}
和:
来代替%
**
“映射”示例
- 通过位置
1 | '{}{}'.format('123','abc') |
字符串的format函数可以接受不限个参数,位置可以不按顺序,可以不用也可以使用多次,大括号可以写两遍来转义。
- 通过关键字参数
1 | '{name}|{age}'.format(age=18,name="abc") |
- 通过对象属性
1 | #class Car: |
- 通过下标
1 | 'blue',200] car=[ |
格式限定符
它有着丰富的的“格式限定符”(语法是{}中带:号),比如:
- 填充与对齐
填充常跟对齐一起使用
^
、<
、>
分别是居中、左对齐、右对齐,后面带宽度
:
号后面带填充的字符,只能是一个字符,不指定的话默认是用空格填充
1 | '{:>8}'.format('189') |
- 精度与类型f
精度常跟类型f一起使用
1 | '{:.2f}'.format(321.33345) |
其中.2表示长度为2的精度,f表示float类型。
- 多进制表示
b、d、o、x分别是二进制、十进制、八进制、十六进制。
1 | '{:b}'.format(17) |
- 其他类型
千位分隔符
用,号还能用来做金额的千位分隔符。
1 | '{:,}'.format(1234567890) |
‘c’ - 字符。在打印之前将整数转换成对应的Unicode字符串
‘e’ - 幂符号。用科学计数法打印数字。用’e’表示幂
‘g’ - 一般格式。将数值以fixed-point格式输出。当数值特别大的时候,用幂形式打印
‘n’ - 数字。当值为整数时和’d’相同,值为浮点数时和’g’相同。不同的是它会根据区域设置插入数字分隔符。
‘%’ - 百分数。将数值乘以100然后以fixed-point(‘f’)格式打印,值后面会有一个百分号。