Python字符串三種格式化輸出
字符串格式化輸出是python非常重要的基礎(chǔ)語(yǔ)法,今天就把三種格式化輸出做一個(gè)簡(jiǎn)單的總結(jié),希望對(duì)大家有幫助。
格式化輸出:內(nèi)容按照一定格式要求進(jìn)行輸出。
1.使用占位符%輸出
python2.6版本之前,使用%格式化字符串沿用的是C語(yǔ)言的輸出格式。
使用說(shuō)明:
print("格式化字符串" % 變量)
#變量超過(guò)2個(gè)使用元組格式:
print("格式化字符串" % (變量1,變量2))
使用%占位符表示字符串中變量位置。
傳入的值要與%占位符的變量一一對(duì)應(yīng)。
其中,%s表示字符串,%d表示整數(shù),%f表示小數(shù)(默認(rèn)保留小數(shù)點(diǎn)后6位,%.2f保留兩位小數(shù)),存在格式化標(biāo)志時(shí),需要用 %%表示一個(gè)百分號(hào)。
name='xiaoming' age=12 print("My name is %s,My age is %d" %(name,age)) #輸出:My name is xiaoming,My age is 12
2.format格式化
format是python2.6新增的一個(gè)格式化字符串的方法,相比%格式化方法有如下優(yōu)點(diǎn):
- 單個(gè)參數(shù)可以多次輸出,參數(shù)順序可以不相同
- 填充方式十分靈活,對(duì)齊方式十分強(qiáng)大
- 官方推薦用的方式
使用說(shuō)明:
print("...{索引}, ... , {索引}, ...".format(值1, 值2)) #索引{}為空,默認(rèn)按照順序取值 print("...{key1}, ... , {key2}, ...".format(key1=value,key2=value))
name='xiaoming' age=12 print('My name is {}, My age is {}'.format(name,age)) print('My name is {0}, My age is {1}'.format(name,age)) print('My name is {name}, My age is {age}'.format(name='xiaoming',age=12)) #輸出:My name is xiaoming,My age is 12
format進(jìn)階
1.填充對(duì)齊
# 先取到值,然后在冒號(hào)后設(shè)定填充格式:{索引:[填充字符][對(duì)齊方式][寬度]} # *<20:左對(duì)齊,總共20個(gè)字符,不夠的用*號(hào)填充 print('{0:*<20}'.format('hellopython')) # *>20:右對(duì)齊,總共20個(gè)字符,不夠的用*號(hào)填充 print('{0:*>20}'.format('hellopython')) # *^20:居中顯示,總共20個(gè)字符,不夠的用*號(hào)填充 print('{0:*^20}'.format('hellopython')) 輸出: hellopython********* *********hellopython ****hellopython*****
2.位數(shù)與進(jìn)制轉(zhuǎn)換
#保留2位有效數(shù)字 print("{:.2f}".format(3.1415926)) #轉(zhuǎn)成二進(jìn)制 print('{0:b}'.format(16)) #轉(zhuǎn)成八進(jìn)制 print('{0:o}'.format(10)) #轉(zhuǎn)成十六進(jìn)制 print('{0:x}'.format(15)) 輸出 3.14 10000 12 f
f-string格式化
在Python 3.6中引入 了f-strings,不僅比str.format使用簡(jiǎn)單,而且效率也更高。
使用說(shuō)明
f-string是字符串前面加上 "f",{}直接使用變量、表達(dá)式等。
name='xiaoming' age=12 #{}中直接使用變量 print(f'My name is {name},My age is {age}') #{}中運(yùn)行表達(dá)式 print(f'{1+2+3}') #調(diào)用Python內(nèi)置函數(shù) print(f'{name.upper()}') #用lambda匿名函數(shù):可以做復(fù)雜的數(shù)值計(jì)算 fun = lambda x : x+1 print(f'{fun(age)}') #輸出 My name is xiaoming,My age is 12 6 XIAOMING 13
總結(jié)
到此這篇關(guān)于Python字符串三種格式化輸出的文章就介紹到這了,更多相關(guān)Python字符串格式化輸出內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
細(xì)說(shuō)NumPy數(shù)組的四種乘法的使用
這篇文章主要介紹了細(xì)說(shuō)NumPy數(shù)組的四種乘法的使用,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2020-12-12Macbook安裝Python最新版本、GUI開(kāi)發(fā)環(huán)境、圖像處理、視頻處理環(huán)境詳解
這篇文章主要介紹了Macbook安裝Python最新版本(3.6.4)、GUI開(kāi)發(fā)環(huán)境、圖像處理、視頻處理環(huán)境詳解,需要的朋友可以參考下2020-02-02更換Django默認(rèn)的模板引擎為jinja2的實(shí)現(xiàn)方法
今天小編就為大家分享一篇更換Django默認(rèn)的模板引擎為jinja2的實(shí)現(xiàn)方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2018-05-05基于Pygame中Pygame模塊的大戰(zhàn)外星人實(shí)戰(zhàn)
本文主要介紹了基于Pygame中Pygame模塊的大戰(zhàn)外星人實(shí)戰(zhàn),文中通過(guò)示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2021-12-12keras 多任務(wù)多l(xiāng)oss實(shí)例
這篇文章主要介紹了keras 多任務(wù)多l(xiāng)oss實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2020-06-06python之文件的讀寫和文件目錄以及文件夾的操作實(shí)現(xiàn)代碼
這篇文章主要介紹了python之文件的讀寫和文件目錄以及文件夾的操作實(shí)現(xiàn)代碼,需要的朋友可以參考下2016-08-08Python實(shí)現(xiàn)http服務(wù)器(http.server模塊傳參?接收參數(shù))實(shí)例
這篇文章主要為大家介紹了Python實(shí)現(xiàn)http服務(wù)器(http.server模塊傳參?接收參數(shù))實(shí)例,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-11-11