Python異常提示神器,1秒發(fā)現(xiàn)錯(cuò)誤!
二條:再見爬蟲加密!掌握這些特征,一秒識(shí)別密文加密方式!
三條:?空間數(shù)據(jù)可視化神器,Pydeck..
↑?關(guān)注 + 星標(biāo)?,每天學(xué)Python新技能
后臺(tái)回復(fù)【大禮包】送你Python自學(xué)大禮包 來源:量子位
即使是Python,報(bào)錯(cuò)時(shí)也令人頭大。
看著這一堆亂麻,不知道是該懷疑人生,還是懷疑自己手殘。

那么,Python異常輸出美化工具PrettyErrors了解一下?
只需一個(gè)import,報(bào)錯(cuò)也能整齊劃一,錯(cuò)誤代碼位置、錯(cuò)誤原因清晰明了,一眼就能看清。debug仿佛都沒有那么痛苦了。

一行代碼簡化報(bào)錯(cuò)
先來試試一個(gè)簡單的錯(cuò)誤。
def?foo():
????1/0
foo()
不使用PrettyErrors庫,報(bào)錯(cuò)信息長這樣:

倒是能看清,就是這一長串紅字十分丑陋。
讓我們來import一下pretty_errors。輸出變成了這個(gè)樣子:

是不是清晰簡潔了許多?
還可以自定義顏色。

bug少的時(shí)候,還不覺得有什么太大區(qū)別。當(dāng)報(bào)錯(cuò)信息鋪滿一整頁,美觀不美觀,對(duì)心靈的打擊程度就完全不同了。

使用指南
像Python的所有第三方庫一樣,PrettyErrors的安裝十分簡單。
pip一下:
python?-m?pip?install?pretty_errors
如果你想讓你的每一個(gè)程序都能這樣在報(bào)錯(cuò)時(shí)也保持美貌,那么運(yùn)行下面這這行命令,就不用每次都 import pretty_errors 啦。
python?-m?pretty_errors
并且,如此一來,語法錯(cuò)誤(SyntaxError)的格式也同樣能被美化。僅在程序中 import pretty_errors 時(shí),這一點(diǎn)是無法實(shí)現(xiàn)的。
不喜歡默認(rèn)配置,想要打造自己滿意的美化效果?那就試試這幾個(gè)函數(shù):
pretty_errors.configure()
pretty_errors.whitelist()
pretty_errors.blacklist()
pretty_errors.pathed_config()
比如要改變輸出文件名的顏色,代碼是這樣的:
pretty_errors.configure(filename_color?=?pretty_errors.BRIGHT_YELLOW)如果你發(fā)現(xiàn)上面這一番操作之后,啥改變也沒發(fā)生,那就檢查一下PYTHON_PRETTY_ERRORS,當(dāng)它的值為0時(shí),PrettyErrors是被禁用的。
set?PYTHON_PRETTY_ERRORS=1
需要注意的是,你使用的終端本身具有顏色輸出功能,異常信息輸出才會(huì)帶有不同的顏色。如果不巧你慣用的是單色終端,那么可以試試 pretty_errors.mono() 中的設(shè)置。
人生苦短,bug實(shí)多。
何不試試PrettyErrors,給Debug的過程添加幾分美感~
傳送門
推薦閱讀
