format格式化

简单使用

#方法一
str="{} {}"
print(str.format("Hello","World"))
#方法二
str="{} {}".format("Hello","World")
print(str)
#可直接输出
print("{} {}".format("Hello","World"))

指定位置

str1="{0}  {1}".format("Hello","World")
str2="{1} {0}".format("Hello","World")
str3="我村有个傻子叫{0},{0}是我村的一个傻子".format("小明")
#不加位置会报错
#str3="我村里有个傻子叫{},{}是我村里的一个傻子".format("小明")
print(str1)
print(str2)
print(str3)

命名参数

str="姓名:{name},性别:{sex},年龄:{age}"
print(str.format(name="小明",sex="男",age="20"))

通过字典设置参数,需要解包

str="姓名:{name},性别:{sex},年龄:{age}"
str_dict={"name":"小明"\
,"sex":"男"\
,"age":"20"}
print(str.format(**str_dict))#**为解包操作

对数字的格式化输出

str="小明的语文成绩是{}分,数学成绩是{}分"
str.format(80.54,90.666)
#保留两位小数输出
str="小明的语文成绩是{:.2f}分,数学成绩是{:.2f}分"
print(str.format(80.54,90.666))
'''
'b' - 二进制
'c' - Unicode字符
'd' - 十进制
'o' - 八进制
'x' - 十六进制
'e' - 科学计数法
'g' - 一般格式,数值较大时为科学计算法
'%' - 百分数
......
'''