Python字符串格式化之使用format()方法
Python字符串類型的格式化
關(guān)于字符串的格式化,Python支持類似于C語言的printf()函數(shù)的格式化方法,也支持format()方法的格式化方法,因為Python更接近自然語言的復(fù)雜數(shù)據(jù)類型,無法全部通過類C的格式化方法,所以學(xué)Python著重使用format()方法進行字符串的格式化。
一、format()函數(shù)的基本使用
1、 print(“{}{}”.format(a,b),這里{}成為槽,要把后邊f(xié)ormat里的內(nèi)容對應(yīng)放在里邊,假如a,b = 1,2 ,輸出的結(jié)果為12;
*2、*如果{}內(nèi)有標(biāo)號,則后邊f(xié)ormat()里的東西按標(biāo)號來對應(yīng)輸出,如print(“{1}{0}”.format(a,b),按照以上初始條件,輸出結(jié)果為21,注意:標(biāo)號要從0開始排序;
二、format()函數(shù)的格式控制
1、 分別使用< > ^表示左對齊、右對齊、中間對齊
s = "Hello"
print("{0:<30}".format(s))
print("{0:^30}".format(s))
print("{0:>30}".format(s))

注意:默認(rèn)按照左對齊
2、 空白位置的填充類型
填充是指標(biāo)定寬度內(nèi)空白位置用什么類型填充,* ^ 用*填充,-^用-填充
s = "welcome"
print("{0:*^30}".format(s))
print("{0:-^30}".format(s))
print("{0:=^30}".format(s))

3、 格式控制中的逗號用于顯示數(shù)字類型的千位分隔符
q = 45687296215.2
print("{0:-^20,}".format(q))
print("{0:-^20}".format(q)) #對比輸出

4、 精度
精度表示兩個含義,由小數(shù)點(.)開頭,對于浮點數(shù),精度表示小數(shù)點后輸出的有效位數(shù),對于字符串,精度表示字符串輸出的最大長度。
print("{0:.3f}".format(3.1415926))
print("{0:.3}".format("hello"))

注意:浮點數(shù)輸出時記得寫f
5、類型
類型包括輸出整數(shù)類型和浮點數(shù)類型的控制規(guī)則
(一)整數(shù)類型
- 1> b:輸出整數(shù)的二進制形式
- 2> c:輸出整數(shù)對應(yīng)的Unicode碼形式
- 3> d:輸出整數(shù)的十進制形式
- 4> o:輸出整數(shù)的八進制形式
- 5> x:輸出整數(shù)的小寫十六進制形式
- 6> X:輸出整數(shù)的大寫十六進制形式
print("{0:b},{0:c},{0:d},{0:o},{0:x},{0:X}".format(255))
注意要寫上0
(二)浮點數(shù)類型
- 1> e:輸出浮點數(shù)對應(yīng)小寫字母e的指數(shù)形式
- 2> E:輸出浮點數(shù)對應(yīng)大寫字母E的指數(shù)形式
- 3> f:輸出浮點數(shù)的標(biāo)準(zhǔn)浮點形式
- 4> %:輸出浮點數(shù)的百分形式
print("{0:e},{0:E},{0:f},{0:%}".format(3.1415926))
print("{0:.2e},{0:.2E},{0:.2f},{0:.2%}".format(3.1415926))

注意,浮點數(shù)輸出盡量使用精度表示小數(shù)點后的寬度,有助于更好的控制格式。
三、 歸納總結(jié)

四、 小程序—繪制*三角
(1) 代碼部分
print("請問你要建立幾層?")
N = eval(input())
for i in range(1,N*2 + 1,2):
s = i*'*'
print("{0:^{1}}".format(s,N*2))
(2) 運行結(jié)果

(3) 代碼分析
- 注意我設(shè)置的步長是2,所以截止條件是2*N + 1,否則只會出現(xiàn)N/2層
- 這里s = i* ‘*’,恰當(dāng)?shù)脑黾恿诵⌒切?/li>
好了,今天的詳解就到這里。
以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
Python aiohttp百萬并發(fā)極限測試實例分析
這篇文章主要介紹了Python aiohttp百萬并發(fā)極限測試,結(jié)合實例形式分析了Python異步編程基于aiohttp客戶端高并發(fā)請求的相關(guān)操作技巧與使用注意事項,需要的朋友可以參考下2019-10-10
Python數(shù)據(jù)結(jié)構(gòu)之雙向鏈表詳解
單鏈表只有一個指向直接后繼的指針來表示結(jié)點間的邏輯關(guān)系,可以方便的從任一結(jié)點開始查找其后繼結(jié)點,但要找前驅(qū)結(jié)點則比較困難,雙向鏈表是為了解決這一問題,使用兩個指針表示結(jié)點間的邏輯關(guān)系。本文將重點為大家介紹雙向鏈表的相關(guān)操作,需要的可以參考一下2022-01-01
如何利用Boost.Python實現(xiàn)Python C/C++混合編程詳解
這篇文章主要給大家介紹了關(guān)于如何利用Boost.Python實現(xiàn)Python C/C++混合編程的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起看看吧2018-11-11

