自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

一行代碼,讓你的 Python bug 與眾不同

開發(fā) 后端
在 Python 中,沒(méi)有什么問(wèn)題是一個(gè)庫(kù)解決不了的,別亂如麻的Python報(bào)錯(cuò)輸出,一行代碼讓bug更清晰。

PrettyErrors 是一個(gè)精簡(jiǎn) Python 錯(cuò)誤信息的工具,特點(diǎn)是界面十分簡(jiǎn)潔友好。

它最顯著的功能是支持在終端進(jìn)行彩色輸出,標(biāo)注出文件棧蹤跡,發(fā)現(xiàn)錯(cuò)誤信息,過(guò)濾掉冗余信息,提取出關(guān)鍵部分,并且進(jìn)行彩色標(biāo)注,從而提高開發(fā)者的效率。

寫代碼本身就很不容易,特別是在幾萬(wàn)行的代碼中出現(xiàn)一個(gè)bug,一時(shí)半會(huì)找不到問(wèn)題所在,這個(gè)時(shí)候,你一定很抓狂,很煩躁。特別是Python代碼出錯(cuò)了,滿屏幕大段大段的錯(cuò)誤信息提示,想定位錯(cuò)誤更是難上加難。

先來(lái)看看上面這段 traceback

  • 只有一種顏色,無(wú)法像代碼高亮那樣,對(duì)肉眼實(shí)現(xiàn)太不友好了
  • 無(wú)法直接顯示報(bào)錯(cuò)的代碼,排查問(wèn)題慢人一步,效率太低

那有沒(méi)有一種辦法,可以解決這些問(wèn)題呢?

當(dāng)然有了,在 Python 中,沒(méi)有什么問(wèn)題是一個(gè)庫(kù)解決不了的,別亂如麻的Python報(bào)錯(cuò)輸出,一行代碼讓bug更清晰。

今天要介紹的這個(gè)庫(kù)呢,叫做 pretty-errors ,從名字上就可以知道它的用途,是用來(lái)美化錯(cuò)誤信息的。

下面介紹如何安裝使用PrettyErrors。

通過(guò)這條命令你可以安裝它

linuxmi@linuxmi:~/www.linuxmi.com$ pip install pretty_errors

或者

linuxmi@linuxmi:~/www.linuxmi.com$ pip3 install pretty-errors

全局配置

如果你想讓你的每一個(gè)程序都能這樣在報(bào)錯(cuò)時(shí)使其清晰易讀,那么運(yùn)行下面這這行命令配置全局可用。

linuxmi@linuxmi:~/www.linuxmi.com$ python3 -m pretty_errors

配置完成后,你再運(yùn)行任何腳本,traceback 都會(huì)自動(dòng)美化了。

取消全局配置

同樣運(yùn)行這個(gè)命令

linuxmi@linuxmi:~/www.linuxmi.com$ python3 -m pretty_errors

輸入 C 即可清除全局配置。

單文件中使用

取消全局可用后,你可以根據(jù)自己需要,在你需要使用 pretty-errors 的腳本文件中導(dǎo)入 pretty_errors ,即可使用

import pretty_errors

但是這樣,語(yǔ)法錯(cuò)誤(SyntaxError)的格式就不能被美化。所以為了讓美化更徹底,官方推薦你使用 python -m pretty_errors

不喜歡默認(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)上面這一番操作之后,啥改變也沒(méi)發(fā)生,那就檢查一下PYTHON_PRETTY_ERRORS,當(dāng)它的值為0時(shí),PrettyErrors是被禁用的。

set PYTHON_PRETTY_ERRORS = 1

需要注意的是,你使用的終端本身具有顏色輸出功能,異常信息輸出才會(huì)帶有不同的顏色。如果不巧你慣用的是單色終端,那么可以試試 pretty_errors.mono() 中的設(shè)置。

自定義配置示例

from pretty_errors import *
configure(filename_color=BRIGHT_BLUE) # 設(shè)置文件名為亮藍(lán)色
def f():
return 1 / 0
if __name__ == "__main__":
f()

結(jié)語(yǔ)

總的來(lái)說(shuō),這個(gè)庫(kù)功能非常強(qiáng)大,使用效果也特別酷炫,它就跟 PEP8 規(guī)范一樣,沒(méi)有它是可以,但是有了它會(huì)更好一樣。對(duì)于某些想自定義錯(cuò)誤輸出場(chǎng)景的人,pretty_errors 會(huì)是一個(gè)不錯(cuò)的解決方案。

責(zé)任編輯:龐桂玉 來(lái)源: Linux公社
相關(guān)推薦

2015-03-20 14:51:09

Testin云測(cè)

2024-03-08 12:20:25

Python代碼庫(kù)

2011-06-03 14:10:31

SEO網(wǎng)頁(yè)摘要

2013-07-30 15:24:53

App應(yīng)用體驗(yàn)

2021-08-23 17:49:02

代碼開發(fā)模型

2016-12-02 08:53:18

Python一行代碼

2018-09-19 15:46:51

編程語(yǔ)言Python編譯器

2024-12-17 15:00:00

Python代碼

2021-11-02 16:25:41

Python代碼技巧

2022-04-09 09:11:33

Python

2017-10-20 08:03:40

windows桌面資源

2020-08-12 14:54:00

Python代碼開發(fā)

2021-06-11 14:15:55

代碼前端項(xiàng)目

2021-05-28 07:39:17

SQL代碼操作

2020-08-19 10:30:25

代碼Python多線程

2017-04-13 19:20:18

Python代碼并行任務(wù)

2017-04-05 11:10:23

Javascript代碼前端

2020-07-20 09:20:48

代碼geventPython

2017-10-26 13:40:11

Python一行代碼

2020-02-19 15:02:23

代碼開發(fā)工具
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)