在許多編程語言中都包含有格式化字符串的功能,比如C和Fortran語言中的格式化輸入輸出。在Python中內(nèi)置有對字符串進行格式化的操作符是"%"。
模板
格式化字符串時,Python使用一個字符串作為模板。模板中有格式符,這些格式符為真實值預(yù)留位置,并說明真實數(shù)值應(yīng)該呈現(xiàn)的格式。Python用一個tuple將多個值傳遞給模板,每個值對應(yīng)一個格式符。
格式符
格式符為真實值預(yù)留位置,并控制顯示的格式。格式符可以包含有一個類型碼,用以控制顯示的類型,如下:
%s字符串(采用str()的顯示)
%r字符串(采用repr()的顯示)
%c單個字符
%b二進制整數(shù)
%d十進制整數(shù)
%i十進制整數(shù)
%o八進制整數(shù)
%x十六進制整數(shù)
%e指數(shù)(基底寫為e)
%E指數(shù)(基底寫為E)
%f浮點數(shù)
%F浮點數(shù),與上相同
%g指數(shù)(e)或浮點數(shù)(根據(jù)顯示長度)
%G指數(shù)(E)或浮點數(shù)(根據(jù)顯示長度)
%%字符"%"
可以用如下的方式,對格式進行進一步的控制:
%[(name)][flags][width].[precision]typecode
(name)為命名
flags可以有+,-,''或0。+表示右對齊。-表示左對齊。''為一個空格,表示在正數(shù)的左側(cè)填充一個空格,從而與負數(shù)對齊。0表示使用0填充。
width表示顯示寬度
precision表示小數(shù)點后精度
比如:
print("%+10x"%10)
print("%04d"%5)
print("%6.3f"%2.3)
上面的width,precision為兩個整數(shù)。我們可以利用*,來動態(tài)代入這兩個量。比如:
print("%.*f"%(4,1.2))
Python實際上用4來替換*。所以實際的模板為"%.4f"。
總結(jié)
Python中內(nèi)置的%操作符可用于格式化字符串操作,控制字符串的呈現(xiàn)格式。Python中還有其他的格式化字符串的方式,但%操作符的使用是最方便的。
以上內(nèi)容為大家介紹了Python字符串格式化(%操作符),希望對大家有所幫助,如果想要了解更多Python相關(guān)知識,請關(guān)注IT培訓機構(gòu):千鋒教育。http://www.em-kal.com/