format()是一个功能强大的字符串格式化工具,把字符串看做模板,通过传参的方式将数据填入模板返回我们需要的字符串;相比于%控制符的格式化方法,format更加灵活,我们可以在{}中设置控制信息达到我们需要的效果;
format()有三种基础用法:
- 顺序填入:{}中没有任何的数据,没有任何特殊要求,且顺序默认从左到右
- 编号填入:{}中填入的数字相当于列表的下标
- 关键字填入:类似于字典的控制方法
进制转换输出方法:
以为例,{:b}等价于{0:b},“:”前面为对应编号,如果没有就是顺序填入,“:”后面是格式化方法,b代表二进数,所以这个用法就是将第一个数字以二进制的形式输出;其他的同理,就不赘述了;
以不同的数学表示方法输出:
这里我有点没有搞明白{:e}的用法,当以{:g}或者{:n}的形式输出大位数时,也能自动转换成科学计数法;
format()的升级用法:
- 通过列表传参:
相同的道理,我们也可以通过字典、元组等形式进行传参; - 设置字符串长度:这里的30就是指字符串长度为30字符,如果没有到30字符就用空格代替,如果超过30字符也没有影响,正常输出;
- 设置对齐方式:是不是非常的形象,看箭头,箭头朝向哪就是朝哪边对其的;
找不同,看看是哪里不一样,用*填充空格了: - 用“,”分割大位数:
- 设置小数位数:注意这里小数会四舍五入的
我们还可以用 % 格式化字符,用法跟format是非常类似的:
print('%s今年%d岁' % ('小明',12)) # 其中%s代表字符串类型数据,%d代表整型数据
# %f是浮点型数据
# 小明今年12岁