詳解python?Warning警告有哪些情況
摘要:
在很多代碼中我們經(jīng)常能看到一些代碼能得到我們想要的結(jié)果,但是還會出現(xiàn)一些警告提示,這種情況一般出現(xiàn)情況會有好幾種,下面就來細數(shù)一下所有類型警告和處理類。
在很多代碼中我們經(jīng)常能看到一些代碼能得到我們想要的結(jié)果,但是還會出現(xiàn)一些警告提示,這種情況一般出現(xiàn)情況會有好幾種,下面就來細數(shù)一下所有類型警告和處理類。
一、警告類
首先是基類Warning,是警告基類。我們在IDE中一般只會看到他的子類:
DeprecationWarning # 有關已棄用功能的警告的基類 PendingDeprecationWarning # 有關不推薦使用功能的警告的基類 RuntimeWarning # 有關可疑的運行時行為的警告的基類 SyntaxWarning # 關于可疑語法警告的基類 UserWarning # 用戶代碼生成警告的基類 FutureWarning # 有關已棄用功能的警告的基類 ImportWarning # 關于模塊導入時可能出錯的警告的基類 UnicodeWarning # 與Unicode相關的警告的基類 BytesWarning # 與bytes和bytearray相關的警告的基類 ResourceWarning # 與資源使用相關的警告的基類。被默認警告過濾器忽略。
二、實例代碼處理方法
捕獲警告,在退出上下文時恢復警告過濾器和 showwarning() 函數(shù)功能。如果 record 參數(shù)是 False (缺省值),則上下文管理器在入口處返回 None。
如果 record 是 True,則返回一個列表,該列表元素為 showwarning() 函數(shù)所見的對象,列表中的每個元素都具有與 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警告有哪些情況的詳細內(nèi)容,更多關于python Warning警告的資料請關注腳本之家其它相關文章!
相關文章
介紹Python的Django框架中的靜態(tài)資源管理器django-pipeline
這篇文章主要介紹了介紹Python的Django框架中的靜態(tài)資源管理器django-pipeline,django-pipeline是一個開源項目,被用來處理css等靜態(tài)文件,需要的朋友可以參考下2015-04-04
使用pytorch進行張量計算、自動求導和神經(jīng)網(wǎng)絡構(gòu)建功能
pytorch它是一個基于Python的開源深度學習框架,它提供了兩個核心功能:張量計算和自動求導,這篇文章主要介紹了使用pytorch進行張量計算、自動求導和神經(jīng)網(wǎng)絡構(gòu)建,需要的朋友可以參考下2023-04-04
python中pandas.DataFrame對行與列求和及添加新行與列示例
pandas是python環(huán)境下最有名的數(shù)據(jù)統(tǒng)計包,而DataFrame翻譯為數(shù)據(jù)框,是一種數(shù)據(jù)組織方式,這篇文章主要給大家介紹了python中pandas.DataFrame對行與列求和及添加新行與列的方法,文中給出了詳細的示例代碼,需要的朋友可以參考借鑒,下面來一起看看吧。2017-03-03

