詳解python?Warning警告有哪些情況
摘要:
在很多代碼中我們經(jīng)常能看到一些代碼能得到我們想要的結(jié)果,但是還會(huì)出現(xiàn)一些警告提示,這種情況一般出現(xiàn)情況會(huì)有好幾種,下面就來(lái)細(xì)數(shù)一下所有類型警告和處理類。
在很多代碼中我們經(jīng)常能看到一些代碼能得到我們想要的結(jié)果,但是還會(huì)出現(xiàn)一些警告提示,這種情況一般出現(xiàn)情況會(huì)有好幾種,下面就來(lái)細(xì)數(shù)一下所有類型警告和處理類。
一、警告類
首先是基類Warning,是警告基類。我們?cè)贗DE中一般只會(huì)看到他的子類:
DeprecationWarning # 有關(guān)已棄用功能的警告的基類 PendingDeprecationWarning # 有關(guān)不推薦使用功能的警告的基類 RuntimeWarning # 有關(guān)可疑的運(yùn)行時(shí)行為的警告的基類 SyntaxWarning # 關(guān)于可疑語(yǔ)法警告的基類 UserWarning # 用戶代碼生成警告的基類 FutureWarning # 有關(guān)已棄用功能的警告的基類 ImportWarning # 關(guān)于模塊導(dǎo)入時(shí)可能出錯(cuò)的警告的基類 UnicodeWarning # 與Unicode相關(guān)的警告的基類 BytesWarning # 與bytes和bytearray相關(guān)的警告的基類 ResourceWarning # 與資源使用相關(guān)的警告的基類。被默認(rèn)警告過(guò)濾器忽略。
二、實(shí)例代碼處理方法
捕獲警告,在退出上下文時(shí)恢復(fù)警告過(guò)濾器和 showwarning() 函數(shù)功能。如果 record 參數(shù)是 False (缺省值),則上下文管理器在入口處返回 None。
如果 record 是 True,則返回一個(gè)列表,該列表元素為 showwarning() 函數(shù)所見(jiàn)的對(duì)象,列表中的每個(gè)元素都具有與 showwarning() 的參數(shù)具有相同名稱的屬性。
import warnings
warnings.simplefilter("always")
def fxn():
warnings.warn("this is a warning", Warning)
with warnings.catch_warnings():
warnings.simplefilter("ignore")
fxn()
with warnings.catch_warnings(Warning):
warnings.warn("this is a warning2", Warning)
warnings.warn("this is a warning3", Warning)
def fxn2():
warnings.warn("deprecated", DeprecationWarning)
with warnings.catch_warnings(record=True) as w:
# Cause all warnings to always be triggered.
warnings.simplefilter("always")
# Trigger a warning.
fxn2()
# Verify some things
assert len(w) == 1
assert issubclass(w[-1].category, DeprecationWarning)
assert "deprecated" in str(w[-1].message)以上就是詳解python Warning警告有哪些情況的詳細(xì)內(nèi)容,更多關(guān)于python Warning警告的資料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!
相關(guān)文章
python中queue.Queue之task_done的用法
這篇文章主要介紹了python中queue.Queue之task_done的用法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2024-02-02
深入解析python項(xiàng)目引用運(yùn)行路徑
這篇文章主要介紹了python項(xiàng)目引用運(yùn)行路徑的問(wèn)題,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2023-05-05
Python+Pygame實(shí)現(xiàn)之見(jiàn)縫插針游戲的實(shí)現(xiàn)
這篇文章主要為大家介紹了如何利用Python中的Pygame模塊實(shí)現(xiàn)見(jiàn)縫插針游戲,文中的示例代碼講解詳細(xì),對(duì)我們學(xué)習(xí)Python游戲開(kāi)發(fā)有一定幫助,需要的可以參考一下2022-07-07
python實(shí)現(xiàn)圖像識(shí)別功能
這篇文章主要為大家詳細(xì)介紹了python實(shí)現(xiàn)圖像識(shí)別功能,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2018-01-01
PyQt5通過(guò)信號(hào)實(shí)現(xiàn)MVC的示例
這篇文章主要介紹了PyQt5通過(guò)信號(hào)實(shí)現(xiàn)MVC的示例,幫助大家更好的理解和使用pyqt5,感興趣的朋友可以了解下2021-02-02
詳解在Python中使用OpenCV進(jìn)行直線檢測(cè)
在圖像處理中,直線檢測(cè)是一種常見(jiàn)的算法,它通常獲取n個(gè)邊緣點(diǎn)的集合,并找到通過(guò)這些邊緣點(diǎn)的直線。本文將介紹如何在Python中利用OpenCV進(jìn)行直線檢測(cè),需要的可以參考一下2022-03-03
Python中的google authenticator認(rèn)證過(guò)程
文章介紹了使用Python 3.7生成Google Authenticator所需密鑰的步驟,包括使用pyotp模塊生成密鑰、生成二維碼圖片以及通過(guò)客戶端掃描二維碼進(jìn)行二次認(rèn)證的實(shí)現(xiàn)原理2024-11-11
Django動(dòng)態(tài)展示Pyecharts圖表數(shù)據(jù)的幾種方法
本文主要介紹了Django動(dòng)態(tài)展示Pyecharts圖表數(shù)據(jù)的幾種方法,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2021-08-08

