使用icecream實(shí)現(xiàn)優(yōu)雅調(diào)試Python代碼
簡(jiǎn)介
在大型項(xiàng)目中,使用print()調(diào)試代碼可能導(dǎo)致終端輸出過(guò)多,難以分辨輸出結(jié)果與代碼的對(duì)應(yīng)關(guān)系。為了更清晰地調(diào)試,可以采用Icecream庫(kù)。
安裝Icecream
使用pip安裝:
pip install icecream
使用Icecream
Icecream可以顯示函數(shù)輸出及其參數(shù),使調(diào)試更清晰。
示例代碼
from icecream import ic
def plus_five(num):
return num + 5
ic(plus_five(4))
ic(plus_five(5))
檢查執(zhí)行情況
Icecream可以顯示代碼執(zhí)行的位置,無(wú)需添加額外文本信息。
示例代碼
from icecream import ic
def hello(user: bool):
if user:
ic()
else:
ic()
hello(user=True)
自定義前綴
Icecream支持自定義輸出前綴,如代碼執(zhí)行時(shí)間。
示例代碼
from datetime import datetime
from icecream import ic
import time
def time_format():
return f'{datetime.now()}|> '
ic.configureOutput(prefix=time_format)
for _ in range(3):
time.sleep(1)
ic('Hello')
獲取更多信息
通過(guò)設(shè)置includeContext參數(shù)為True,可以顯示文件名、代碼行、函數(shù)信息。
示例代碼
from icecream import ic
def plus_five(num):
return num + 5
ic.configureOutput(includeContext=True)
ic(plus_five(4))
ic(plus_five(5))
刪除Icecream代碼
Icecream僅用于調(diào)試,可以輕松搜索和刪除所有ic調(diào)試語(yǔ)句,使代碼整潔。
示例代碼
from icecream import ic
def plus_five(num):
return num + 5
ic.configureOutput(includeContext=True)
ic(plus_five(4))
ic(plus_five(5))
for i in range(10):
print(f'****** Training model {i} ******')
總結(jié)
通過(guò)使用Icecream,可以更有效地進(jìn)行Python代碼調(diào)試,同時(shí)保持代碼的整潔性。更多功能可以訪問(wèn)Icecream的GitHub主頁(yè)了解。
到此這篇關(guān)于使用icecream實(shí)現(xiàn)優(yōu)雅調(diào)試Python代碼的文章就介紹到這了,更多相關(guān)icecream調(diào)試Python代碼內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
PyQt實(shí)現(xiàn)界面翻轉(zhuǎn)切換效果
這篇文章主要為大家詳細(xì)介紹了PyQt實(shí)現(xiàn)界面翻轉(zhuǎn)切換效果,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2018-04-04
PyTorch一小時(shí)掌握之神經(jīng)網(wǎng)絡(luò)分類篇
這篇文章主要介紹了PyTorch一小時(shí)掌握之神經(jīng)網(wǎng)絡(luò)分類篇,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2021-09-09
Python內(nèi)置模塊ast詳細(xì)功能介紹及使用示例
Python內(nèi)置的模塊有很多,我們也已經(jīng)接觸了不少相關(guān)模塊,這篇文章主要介紹了Python內(nèi)置模塊ast詳細(xì)功能介紹及使用的相關(guān)資料,文中通過(guò)代碼介紹的非常詳細(xì),需要的朋友可以參考下2025-07-07
Pandas之StyleFrame如何設(shè)置表格樣式
這篇文章主要介紹了Pandas之StyleFrame如何設(shè)置表格樣式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2024-07-07
Python Django基礎(chǔ)二之URL路由系統(tǒng)
這篇文章主要介紹了Python Django基礎(chǔ)二之URL路由系統(tǒng) 的相關(guān)資料,需要的朋友可以參考下2019-07-07
如何利用pandas將Excel轉(zhuǎn)為html格式
工作中經(jīng)常會(huì)遇到Excel轉(zhuǎn)為html格式這種需求,下面這篇文章主要給大家介紹了關(guān)于如何利用pandas將Excel轉(zhuǎn)為html格式的相關(guān)資料,主要利用的是pd.to_html,文中通過(guò)示例代碼介紹的非常詳細(xì),需要的朋友可以參考下2021-08-08
使用Python進(jìn)行大規(guī)模數(shù)據(jù)處理和分析
大規(guī)模數(shù)據(jù)處理和分析旨在從海量數(shù)據(jù)中提取有用的信息和見(jiàn)解,以支持決策制定和業(yè)務(wù)發(fā)展,Python憑借其豐富的生態(tài)系統(tǒng)和強(qiáng)大的庫(kù),為處理和分析數(shù)據(jù)提供了豐富的工具和資源,在本文中,我們將深入探討如何利用Python進(jìn)行大規(guī)模數(shù)據(jù)處理和分析,需要的朋友可以參考下2024-05-05
python3利用pathlib替代os.path的方法實(shí)例
os.path 模塊始終是適合Python運(yùn)行的操作系統(tǒng)的路徑模塊,因此可用于本地路徑,下面這篇文章主要給大家介紹了關(guān)于python3利用pathlib替代os.path的相關(guān)資料,需要的朋友可以參考下2022-04-04
python主動(dòng)拋出異常raise的方法實(shí)現(xiàn)
本文主要介紹了python主動(dòng)拋出異常raise的方法實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2023-12-12

