AVt天堂网 手机版,亚洲va久久久噜噜噜久久4399,天天综合亚洲色在线精品,亚洲一级Av无码毛片久久精品

當前位置:首頁 > 科技  > 軟件

Python基礎:格式化輸出

來源: 責編: 時間:2024-01-09 08:52:56 318觀看
導讀哈嘍,大家好,我是了不起。在平時使用python編寫代碼時,控制臺打印結果變量是必不可少的,而且很多初學者都會很頻繁的使用python自帶的print()方法在代碼中打樁,以判斷自己的代碼邏輯獲取值是正確的。但是在代碼中如果需要

哈嘍,大家好,我是了不起。GOq28資訊網——每日最新資訊28at.com

在平時使用python編寫代碼時,控制臺打印結果變量是必不可少的,而且很多初學者都會很頻繁的使用python自帶的print()方法在代碼中打樁,以判斷自己的代碼邏輯獲取值是正確的。GOq28資訊網——每日最新資訊28at.com

GOq28資訊網——每日最新資訊28at.com

但是在代碼中如果需要打印的字段中的數值非常多的時候,使用print()打印的話就會顯得很凌亂,比如下面這種場景。GOq28資訊網——每日最新資訊28at.com

data = [{"first": "第一個值", "second": "第二個值", "third": "第三個值", "fourth": "第四個值", "fifth": "第五個值", },        {"first": [1, 2, 2, 3, 66, 765], "second": {"first":"1","second":"2","third":"3",}, "third": {"first":"1","second":"2","third":"3",}, "fourth": [1,2,3,4,5,], "fifth": ["frist",{"second":{"1":2,"2":"3"}}]}]

定義一個data變量賦值了一個典型的多維列表,然后每個字典中有多個鍵值對,這個時候使用print()方法打印:GOq28資訊網——每日最新資訊28at.com

>>> print(data)#輸出結果為>>> [{'first': '第一個值', 'second': '第二個值', 'third': '第三個值', 'fourth': '第四個值', 'fifth': '第五個值'}, {'first': [1, 2, 2, 3, 66, 765], 'second': {'first': '1', 'second': '2', 'third': '3'}, 'third': {'first': '1', 'second': '2', 'third': '3'}, 'fourth': [1, 2, 3, 4, 5], 'fifth': ['frist', {'second': {'1': 2, '2': '3'}}]}]

使用print()打出來的結果直接會顯示成為一條并且看起來會很凌亂,而且在pycharm工具中會顯示成很長的一條數據,如果這個字典中的多維層級在多一些,我們想要取某一個關鍵值的就會很麻煩。GOq28資訊網——每日最新資訊28at.com

接下來給大家介紹兩個其他的打印方法,分別為pprint和ic。GOq28資訊網——每日最新資訊28at.com

一、pprint

pprint(pretty-print)是 Python 標準庫中的一個模塊,可以將 Python 對象以一種可讀性更高的格式打印出來。比起print()函數可以更好的處理復雜的數據結構,例如嵌套的列表、字典等。這里還是以上方的data變量為例,首先使用from pprint import pprint導入pprint,然后使用pprint()方法打印出來的結果如下。GOq28資訊網——每日最新資訊28at.com

>>> pprint(data)#輸出結果為>>> [{'fifth': '第五個值',      'first': '第一個值',      'fourth': '第四個值',      'second': '第二個值',      'third': '第三個值'},     {'fifth': ['frist', {'second': {'1': 2, '2': '3'}}],      'first': [1, 2, 2, 3, 66, 765],      'fourth': [1, 2, 3, 4, 5],      'second': {'first': '1', 'second': '2', 'third': '3'},      'third': {'first': '1', 'second': '2', 'third': '3'}}]

可以清晰的看見,pprint()將打印的結果做了一個格式化的操作,將列表中每個字典鍵值進行分行顯示,使字典的結構顯示更加清晰,提高了可閱讀性。GOq28資訊網——每日最新資訊28at.com

同時pprint()還有一些高級用法,我們可以定義打印數據的縮進、設置輸出寬度等。GOq28資訊網——每日最新資訊28at.com

1.設置縮進

pprint()方法中有一個設置縮進的indent參數,如果想要每個層級之間縮進2個空格,則設置indent=2即可,示例如下GOq28資訊網——每日最新資訊28at.com

>>> pprint(data,indent=2)#輸出結果為>>> [ { 'fifth': '第五個值',               'first': '第一個值',       'fourth': '第四個值',       'second': '第二個值',       'third': '第三個值'},     { 'fifth': ['frist', {'second': {'1': 2, '2': '3'}}],      'first': [1, 2, 2, 3, 66, 765],      'fourth': [1, 2, 3, 4, 5],      'second': {'first': '1', 'second': '2', 'third': '3'},      'third': {'first': '1', 'second': '2', 'third': '3'}}]

可以看見設置indent=2之后,pprint()將打印出的數據每個層級之間都縮進2個空格,這樣在平時打印工作中合理設置一個縮進空格可以更加直觀的閱讀每個層級。GOq28資訊網——每日最新資訊28at.com

2.設置寬度

pprint ()默認的輸出寬度為 80 個字符,可以通過設置 width 參數來更改輸出寬度。示例如下:GOq28資訊網——每日最新資訊28at.com

>>> pprint(data,width=40)#輸出結果為>>> [{'fifth': '第五個值',      'first': '第一個值',      'fourth': '第四個值',      'second': '第二個值',      'third': '第三個值'},     {'fifth': ['frist',                {'second': {'1': 2,                            '2': '3'}}],      'first': [1, 2, 2, 3, 66, 765],      'fourth': [1, 2, 3, 4, 5],      'second': {'first': '1',                 'second': '2',                 'third': '3'},      'third': {'first': '1',                'second': '2',                'third': '3'}}]

設置輸出寬度后可以看到pprint()將打印的數據中每一個字典的鍵值都分行顯示了。GOq28資訊網——每日最新資訊28at.com

GOq28資訊網——每日最新資訊28at.com

二、ic

ic模塊取之于icecream庫,它是一個python第三方庫,在使用去需要下載icecream庫并導入:GOq28資訊網——每日最新資訊28at.com

#pip安裝icecream庫pip install icecream#導入ic模塊from icecream import ic

使用ic()方法打印對象數據時,它也是可以將數據進行格式化后打印出來最終的結果,數據格式化這一點和pprint()基本是相同的:GOq28資訊網——每日最新資訊28at.com

>>> ic(data)#輸出結果為>>> ic| data: [{'fifth': '第五個值',                'first': '第一個值',                'fourth': '第四個值',                'second': '第二個值',                'third': '第三個值'},               {'fifth': ['frist', {'second': {'1': 2, '2': '3'}}],                'first': [1, 2, 2, 3, 66, 765],                'fourth': [1, 2, 3, 4, 5],                'second': {'first': '1', 'second': '2', 'third': '3'},                'third': {'first': '1', 'second': '2', 'third': '3'}}]

通過使用ic()方法輸出后,不僅可以看到格式話的數據,并且它還自動將你輸出的變量也顯示了出來,這樣也可以延伸到輸出函數返回的值,具體如下:GOq28資訊網——每日最新資訊28at.com

#隨意定義一個函數def func(one_data):    return one_data + 1    #給函數傳入一個值為3,并打印函數返回值>>> ic(func(3))#得到打印的結果>>> ic| func(3): 4

這樣把輸出的函數和我們傳入的值也自動顯示出來了。GOq28資訊網——每日最新資訊28at.com

同時,以pycharm為例,使用ic()輸出值后,在控制臺會自動將你輸出的值轉變顏色,可以更加直觀的看到輸出的內容。GOq28資訊網——每日最新資訊28at.com

GOq28資訊網——每日最新資訊28at.com

本文鏈接:http://www.tebozhan.com/showinfo-26-58981-0.htmlPython基礎:格式化輸出

聲明:本網頁內容旨在傳播知識,若有侵權等問題請及時與本網聯系,我們將在第一時間刪除處理。郵件:2376512515@qq.com

上一篇: 詳解Rust編程中的生命周期

下一篇: 訂單視角看支付,你明白了嗎?

標簽:
  • 熱門焦點
  • 如何正確使用:Has和:Nth-Last-Child

    我們可以用CSS檢查,以了解一組元素的數量是否小于或等于一個數字。例如,一個擁有三個或更多子項的grid。你可能會想,為什么需要這樣做呢?在某些情況下,一個組件或一個布局可能會
  • 之家push系統迭代之路

    前言在這個信息爆炸的互聯網時代,能夠及時準確獲取信息是當今社會要解決的關鍵問題之一。隨著之家用戶體量和內容規模的不斷增大,傳統的靠"主動拉"獲取信息的方式已不能滿足用
  • 虛擬鍵盤 API 的妙用

    你是否在遇到過這樣的問題:移動設備上有一個固定元素,當激活虛擬鍵盤時,該元素被隱藏在了鍵盤下方?多年來,這一直是 Web 上的默認行為,在本文中,我們將探討這個問題、為什么會發生
  • 每天一道面試題-CPU偽共享

    前言:了不起:又到了每天一到面試題的時候了!學弟,最近學習的怎么樣啊 了不起學弟:最近學習的還不錯,每天都在學習,每天都在進步! 了不起:那你最近學習的什么呢? 了不起學弟:最近在學習C
  • 微博大門常打開,迎接海外畫師漂洋東渡

    作者:互聯網那些事“起猛了,我能看得懂日語了”。“為什么日本人說話我能聽懂?”“中文不像中文,日語不像日語,但是我竟然看懂了”…&hell
  • 3699元!iQOO Neo8 Pro頂配版今日首銷:1TB UFS 4.0同價位唯一

    5月23日,iQOO推出了全新的iQOO Neo8系列,包含iQOO Neo8和iQOO Neo8 Pro兩個版本,其中標準版搭載高通驍龍8+,而Pro版更是首發搭載了聯發科天璣9200+旗艦
  • iQOO Neo8 Pro搶先上架:首發天璣9200+ 安卓性能之王

    經過了一段時間的密集爆料,昨日iQOO官方如期對外宣布:將于5月23日推出全新的iQOO Neo8系列新品,官方稱這是一款擁有旗艦級性能調校的作品。隨著發布時
  • OPPO K11采用全方位護眼屏:三大護眼能力減輕視覺疲勞

    日前OPPO官方宣布,全新的OPPO K11將于7月25日正式發布,將主打旗艦影像,和同檔位競品相比,其最大的賣點就是將配備索尼IMX890主攝,堪稱是2000檔位影像表
  • 世界人工智能大會國際日開幕式活動在世博展覽館開啟

    30日上午,世界人工智能大會國際日開幕式活動在世博展覽館開啟,聚集國際城市代表、重量級院士專家、國際創新企業代表,共同打造人工智能交流平臺。上海市副市
Top