亚洲免费在线-亚洲免费在线播放-亚洲免费在线观看-亚洲免费在线观看视频-亚洲免费在线看-亚洲免费在线视频

Python3內置模塊pprint讓打印比print更美觀詳解

系統 1860 0

概述

在我們使用內置打印函數print時,打印出的Python數據結構對象總是一行的輸出的方式,這樣對數據結構較復雜或數據較多的對象的顯示并不美觀,這時我們可以利用pprint輸出美化數據結構對象。

pprint方法概覽

美化輸出

我們可以利用pprint中的PrettyPrinter控制輸出的打印時的縮進,行寬、甚至打印深度等,定義類如下
class pprint.PrettyPrinter(indent = 1,width = 80,depth = None,stream = None,*,compact = False )

  • indent 縮進
  • width 寬度
  • depth 打印深度
  • stream 指輸出流對象,stream = None輸出流對象默認是sys.stdout
  • compact 如果compact為false(默認值),則長序列中的每個項目將在單獨的行上進行格式化。如果compact為true,則將在每個輸出行上格式化適合寬度的項目。
            
import pprint

L = [str(i)*20 for i in range(10)]
pp = pprint.PrettyPrinter(indent=4)
pp.pprint(L)
print(L)
          

示例結果:

[?? '00000000000000000000',
??? '11111111111111111111',
??? '22222222222222222222',
??? '33333333333333333333',
??? '44444444444444444444',
??? '55555555555555555555',
??? '66666666666666666666',
??? '77777777777777777777',
??? '88888888888888888888',
??? '99999999999999999999']
['00000000000000000000', '11111111111111111111', '22222222222222222222', '33333333333333333333', '44444444444444444444', '55555555555555555555', '66666666666666666666', '77777777777777777777', '88888888888888888888', '99999999999999999999']

對象字符串

我們也可以將目標對象的格式化表示形式返回為字符串。?indent,?width,depth和compact將PrettyPrinter?作為格式化參數傳遞給構造函數,定義類如下

            
L = [str(i)*20 for i in range(10)]
pp = pprint.pformat(L, indent=4)
print(pp)
print(L)
          

示例結果:

[?? '00000000000000000000',
??? '11111111111111111111',
??? '22222222222222222222',
??? '33333333333333333333',
??? '44444444444444444444',
??? '55555555555555555555',
??? '66666666666666666666',
??? '77777777777777777777',
??? '88888888888888888888',
??? '99999999999999999999']
['00000000000000000000', '11111111111111111111', '22222222222222222222', '33333333333333333333', '44444444444444444444', '55555555555555555555', '66666666666666666666', '77777777777777777777', '88888888888888888888', '99999999999999999999']

格式化打印

輸出格式的對象字符串到指定的輸出流,最后以換行符結束,定義類如下

            
import pprint

L = [str(i)*20 for i in range(10)]
pprint.pprint(L, indent=4)
print(L)
          

示例結果:

[?? '00000000000000000000',
??? '11111111111111111111',
??? '22222222222222222222',
??? '33333333333333333333',
??? '44444444444444444444',
??? '55555555555555555555',
??? '66666666666666666666',
??? '77777777777777777777',
??? '88888888888888888888',
??? '99999999999999999999']
['00000000000000000000', '11111111111111111111', '22222222222222222222', '33333333333333333333', '44444444444444444444', '55555555555555555555', '66666666666666666666', '77777777777777777777', '88888888888888888888', '99999999999999999999']

可讀性

判斷對象object的字符串對象是否可讀,True可讀,反之則反。

            
import pprint

L = [str(i)*20 for i in range(10)]
B = pprint.isreadable(L)
print(B)
          

示例結果:

True

總結

以上就是這篇文章的全部內容了,希望本文的內容對大家的學習或者工作具有一定的參考學習價值,謝謝大家對腳本之家的支持。


更多文章、技術交流、商務合作、聯系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!!!

發表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 久久草在线视频观看 | 最新毛片久热97免费精品视频 | 中文字幕在线高清 | 四虎影视最新网站在线播放 | 亚洲日本高清影院毛片 | 九九热视频在线免费观看 | 在线播放国产一区二区三区 | 性影院| 国产亚洲一区在线 | 九九综合九九综合 | 色婷婷国产 | 欧美三级毛片 | 日韩a级黄色片 | 国产欧美精品一区二区色综合 | 国产精品亚洲精品不卡 | 国产一起色一起爱 | 欧美成人高清免费大片观看 | 色综合中文 | 国产色资源 | 日韩欧美一区二区久久黑人 | 鲁丝丝国产一区二区 | 91福利一区二区在线观看 | 欧美羞羞视频 | 色费女人18毛片a级视频在线 | 在线观看香蕉免费啪在线观看 | 亚洲小视频网站 | 就去色综合 | 四虎影院.com | 久久国产乱子伦精品免费强 | 高清在线亚洲精品国产二区 | 亚洲 欧洲 另类 综合 自拍 | 久久精品中文字幕免费 | 天天做天天爽爽快快 | 亚洲国产精品人久久 | 亚洲第一区香蕉_国产a | 一区二区三区在线视频观看 | 国产精品a区| 日本一级爽毛片在线看 | 美国成人a免费毛片 | 亚洲在线视频免费观看 | 97色在线观看免费视频 |