中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

python的pprint怎么用

發布時間:2022-01-17 15:53:07 來源:億速云 閱讀:340 作者:iii 欄目:大數據

本篇內容介紹了“python的pprint怎么用”的有關知識,在實際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領大家學習一下如何處理這些情況吧!希望大家仔細閱讀,能夠學有所成!

學python學到的第一個函數就是print

print("hello world")

不管是新手還是老手,都會經常用來調試代碼。但是對于稍微復雜的對象,打印出來就的時候可讀性就沒那么好了。

例如:

>>> coordinates = [
...    {
...        "name": "Location 1",
...        "gps": (29.008966, 111.573724)
...    },
...    {
...        "name": "Location 2",
...        "gps": (40.1632626, 44.2935926)
...    },
...    {
...        "name": "Location 3",
...        "gps": (29.476705, 121.869339)
...    }
... ]

>>> print(coordinates)
[{'name': 'Location 1', 'gps': (29.008966, 111.573724)}, {'name': 'Location 2', 'gps': (40.1632626, 44.2935926)}, {'name': 'Location 3', 'gps': (29.476705, 121.869339)}]
>>>

打印一個很長的列表時,全部顯示在一行,兩個屏幕都裝不下。

于是 pprint 出現了

pprint

pprint 的全稱是Pretty Printer,更美觀的 printer。在打印內容很長的對象時,它能夠以一種格式化的形式輸出。

>>> import pprint
>>> pprint.pprint(coordinates)
[{'gps': (29.008966, 111.573724), 'name': 'Location 1'},
{'gps': (40.1632626, 44.2935926), 'name': 'Location 2'},
{'gps': (29.476705, 121.869339), 'name': 'Location 3'}]
>>>

當然,你還可以自定義輸出格式

# 指定縮進和寬度
>>> pp = pprint.PrettyPrinter(indent=4, width=50)
>>> pp.pprint(coordinates)
[   {   'gps': (29.008966, 111.573724),
       'name': 'Location 1'},
   {   'gps': (40.1632626, 44.2935926),
       'name': 'Location 2'},
   {   'gps': (29.476705, 121.869339),
       'name': 'Location 3'}]

但是pprint還不是很優雅,因為打印自定義的類時,輸出的是對象的內存地址相關的一個字符串

class Person():
   def __init__(self, age):
       self.age = age

p = Person(10)

>>> print(p)
<__main__.Person object at 0x00BCEBD0>
>>> import pprint
>>> pprint.pprint(p)
<__main__.Person object at 0x00BCEBD0>

beeprint

而用beeprint可以直接打印對象里面的屬性值,省去了重寫 __str__  方法的麻煩

from beeprint import pp
pp(p)
instance(Person):
 age: 10

不同的是,print和pprint是python的內置模塊,而 beeprint 需要額外安裝。

“python的pprint怎么用”的內容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業相關的知識可以關注億速云網站,小編將為大家輸出更多高質量的實用文章!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

务川| 微山县| 大方县| 乌鲁木齐县| 前郭尔| 麻栗坡县| 宾阳县| 梁山县| 曲松县| 梅河口市| 都兰县| 苍南县| 马关县| 鄂托克旗| 黄冈市| 申扎县| 合山市| 吉隆县| 新河县| 牡丹江市| 禹州市| 招远市| 烟台市| 泰顺县| 灯塔市| 锡林郭勒盟| 衡阳市| 巢湖市| 闸北区| 水富县| 武义县| 赞皇县| 电白县| 营口市| 赤水市| 和林格尔县| 襄垣县| 龙川县| 赤城县| 衡阳市| 安多县|