python输出格式控制_Python3.x那些事儿:[50]多种多样的输出格式
目前有兩種方式來格式化輸出格式,第一種就是自己動(dòng)手來進(jìn)行字符串的操作,雖然麻煩,但是都能實(shí)現(xiàn)。第二種方式就是使用str.format()函數(shù)。
string模塊包含了一個(gè)Template類,這個(gè)類提供了把值替換成字符串的方法。
python提供把任意值轉(zhuǎn)換成字符串的方法,repr()函數(shù)和str()函數(shù)。
str()函數(shù)時(shí)用來返回一個(gè)用戶易讀的字符串。repr()函數(shù)則是用來返回一個(gè)可以被解釋器讀取的字符串(不過沒有對(duì)應(yīng)的語法則會(huì)返回SyntaxError錯(cuò)誤)。對(duì)于一些對(duì)象沒有提供返回用戶易讀字符串的功能,則str()函數(shù)就會(huì)返回跟repr()一樣的字符串。很多值,如數(shù)字或者是列表,字典這些結(jié)構(gòu)型數(shù)據(jù)使用這兩個(gè)方法時(shí)會(huì)返回相同的字符串。但是字符串非常特殊,使用這兩個(gè)方法時(shí)會(huì)返回不同的結(jié)果。
repr()函數(shù)會(huì)添加字符串的引號(hào)和反斜線。并且參數(shù)可以使任意的python對(duì)象。
觀察上述兩種方法的不同之處。
str.rjust()函數(shù)會(huì)將字符串進(jìn)行右對(duì)齊,左側(cè)不足部分用空格填充。同樣的有類似的函數(shù),str.ljust()和str.center()。這些方法不會(huì)改變?cè)瓉淼淖址?#xff0c;而是會(huì)返回一個(gè)新的字符串。如果字符串太長(zhǎng),超出了參數(shù)的范圍,則會(huì)返回原字符串,不會(huì)截?cái)唷?/p>
還有另外一個(gè)函數(shù)str.zfill(),它會(huì)把不足部分用0來填充,它可以識(shí)別出加號(hào)和減號(hào)。
str.format()的基礎(chǔ)用法是這樣的:
大括號(hào)和他們中間的字符被替代成了str.format()函數(shù)的參數(shù),大括號(hào)中的數(shù)字可以用來表示參數(shù)的位置。
也可以使用關(guān)鍵字參數(shù),這個(gè)時(shí)候,參數(shù)的引用方式是直接在大括號(hào)中寫關(guān)鍵字參數(shù)的名字。
關(guān)鍵字參數(shù)和位置參數(shù)可以混合使用。
大括號(hào)中還可以包含一些轉(zhuǎn)義字符,他們可以在值被格式化之前先進(jìn)行一些轉(zhuǎn)換處理,相當(dāng)于一個(gè)函數(shù)作用于值。如:'!a'等價(jià)于ascii()函數(shù);'!s'相當(dāng)于str()函數(shù);'!r'相當(dāng)于repr()函數(shù)。
在大括號(hào)的參數(shù)后面可以使用冒號(hào)后跟一些更強(qiáng)大的控制字符串展示效果的參數(shù)。
數(shù)字表示的是字符串的最小長(zhǎng)度,這對(duì)于打印漂亮的表格很有用處。
如果有一個(gè)格式化字符串很長(zhǎng),但是你又不想把它分割,這個(gè)時(shí)候你可以使用變量的引用功能。
還可以使用**操作符來傳遞關(guān)鍵詞參數(shù)。
這個(gè)方法可以和內(nèi)置函數(shù)vars()結(jié)合起來使用,vars()函數(shù)返回一個(gè)字典類型,返回所有的本地變量。
創(chuàng)作挑戰(zhàn)賽新人創(chuàng)作獎(jiǎng)勵(lì)來咯,堅(jiān)持創(chuàng)作打卡瓜分現(xiàn)金大獎(jiǎng)總結(jié)
以上是生活随笔為你收集整理的python输出格式控制_Python3.x那些事儿:[50]多种多样的输出格式的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
 
                            
                        - 上一篇: python数字转换_Python实现中
- 下一篇: 苹果手机怎么投屏的?
