python中字符串格式化的形式_Python中format函数字符串格式化入门
格式化在程序開發(fā)中非常常見,大家肯定不陌生,Python中也存在多重格式化方式,format函數(shù)就是其中一種。
函數(shù)原型format(value[,?format_spec])
參數(shù)意義
value: 需要被格式化的字符串
format_spec: 格式化的格式
函數(shù)定義與用法
本函數(shù)把值value按format_spec的格式來格式化,然而函數(shù)解釋format_spec是根據(jù)value的類型來決定的,不同的類型有不同的格式化解釋。當參數(shù)format_spec為空時,本函數(shù)等同于函數(shù)str(value)的方式。
format () 函數(shù)可以接受不限個參數(shù),位置可以不按順序。
其實本函數(shù)調(diào)用時,是把format(value, format_spec)的方式轉(zhuǎn)換為type(value).__format__(format_spec)方式來調(diào)用,因此在value類型里就查找方法__format__(),如果找不到此方法,就會返回異常TypeError。
其中format_spec的編寫方式如下形式:format_spec?::=??[[fill]align][sign][#][0][width][,][.precision][type]
fill????????::=??
align???????::=??""?|?"="?|?"^"
sign????????::=??"+"?|?"-"?|?"?"
width???????::=??integerprecision???::=
integertype?::=??"b"?|?"c"?|?"d"?|?"e"?|?"E"?|?"f"?|?"F"?|?"g"?|?"G"?|?"n"?|?"o"?|?"s"?|
"x"?|?"X"?|?"%"
fill是表示可以填寫任何字符。
align是對齊方式,是右對齊,^是居中對齊。
sign是符號,?+表示正號,?-表示負號。w
idth是數(shù)字寬度,表示總共輸出多少位數(shù)字。
precision是小數(shù)保留位數(shù)。
兼容性
Python3.x
Python2.6及以上版本
注意事項
format是是python2.6新增的一個格式化字符串的方法,相對于老版的%格式方法,它有很多優(yōu)點。
1.不需要理會數(shù)據(jù)類型的問題,在%方法中%s只能替代字符串類型
2.單個參數(shù)可以多次輸出,參數(shù)順序可以不相同
3.填充方式十分靈活,對齊方式十分強大
4.官方推薦用的方式,%方式將會在后面的版本被淘汰
代碼實例print(format(2918))
print(format(0x500,?'X'))
print(format(3.14,?'0=10'))
print(format(3.14159,?'05.3'))
print(format(3.14159,?'E'))
print(format('test',?'<20'))
print(format('test',?'>20'))
print(format('test',?'^20'))
輸出結(jié)果2918
500
0000003.14
03.14
3.141590E+00
test
test
test
總結(jié)
以上是生活随笔為你收集整理的python中字符串格式化的形式_Python中format函数字符串格式化入门的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 姓陈的网名110个
- 下一篇: window部署python项目_Dja