
python中的f是format函数的缩写,用于格式化输出。
format函数常见的用法是str.format(),其基本语法是通过{}和:来代替以前的%。
示例:
1 2 3 4 5 6 7 8 | >>> "{} {}" .format( "hello" , "world" ) # 不设置指定位置,按默认顺序
'hello world'
>>> "{0} {1}" .format( "hello" , "world" ) # 设置指定位置
'hello world'
>>> "{1} {0} {1}" .format( "hello" , "world" ) # 设置指定位置
'world hello world'
|
注意:如果在字符串中需要直接展示花括号,则用另一个花括号包裹起来转义。
相关推荐:《Python教程》
见示例:
1 2 | >>> "{{我是谁}}:{}" .format( "皮卡丘" )
'{我是谁}:皮卡丘'
|
也支持参数式填写,有点像SHELL的变量:
1 2 | >>> "我是谁:{pikachu}" .format(pikachu= "皮卡丘" )
'我是谁:皮卡丘'
|
数字格式化

b、d、o、x 分别是二进制、十进制、八进制、十六进制。
由表可知,千分位的分隔可以直接使用"{:,}".format(nunber)来解决,这里有个问题,如果分隔的时候带小数,且最后几位是0的话,在被format转化成字符串的时候会被忽略,就像这样:
1 2 3 4 | >>> "{:,}" .format(12345678.90)
'12,345,678.9'
>>> format(12345678.90, ',' )
'12,345,678.9'
|
如果我们希望保留想要的小数位数,需要这样子:
1 2 3 4 | >>> "{:,.2f}" .format(12345678.90)
'12,345,678.90'
>>> "{:,.4f}" .format(12345678.90) #任意几位都行
'12,345,678.9000'
|
所以,format函数在解决数字格式化输出的时候是很强大的,可以组合使用其中的规则来达到个性化定制的目的。