国产成人精品久久免费动漫-国产成人精品天堂-国产成人精品区在线观看-国产成人精品日本-a级毛片无码免费真人-a级毛片毛片免费观看久潮喷

您的位置:首頁技術文章
文章詳情頁

python捕獲警告的三種方法

瀏覽:106日期:2022-06-25 08:42:48
1. 警告不是異常

你是不是經常在使用一些系統庫或者第三方模塊的時候,會出現一些既不是異常也不是錯誤的警告信息?

這些警告信息,有時候非常多,對于新手容易造成一些誤判,以為是程序出錯了。

實則不然,異常和錯誤,都是程序出現了一些問題,但是警告不同,他的緊急程度非常之低,以致于大多數的警告都是可以直接忽略的。

如果不想顯示這些告警信息,可以直接加上參數 -W ignore 參數,就不會再顯示了。

2. 警告能捕獲嗎

能捕獲的只有錯誤異常,但是通過一系列的操作后,你可以將這些警告轉化為異常。

這樣一來,你就可以像異常一樣去捕獲他們了。

在不進行任何設置的情況下,警告會直接打印在終端上。

python捕獲警告的三種方法

3. 捕獲警告方法一

在 warnings 中有一系列的過濾器。

python捕獲警告的三種方法

當你指定為 error 的時候,就會將匹配警告轉換為異常。

之后你就可以通過異常的方式去捕獲警告了。

import warningswarnings.filterwarnings(’error’) try: warnings.warn('deprecated', DeprecationWarning)except Warning as e: print(e)

運行后,效果如下

python捕獲警告的三種方法

4. 捕獲警告方法二

如果你不想對在代碼中去配置將警告轉成異常。

import warningstry: warnings.warn('deprecated', DeprecationWarning)except Warning as e: print(e)

可以在執行的時候,只要加上一個參數 -W error ,就可以實現一樣的效果

$ python3 -W error demo.pydeprecated5. 捕獲警告方法三

除了上面的方法之外 ,warnings 還自帶了個捕獲警告的上下文管理器。

當你加上 record=True 它會返回一個列表,列表里存放的是所有捕獲到的警告,我將它賦值為 w,然后就可以將它打印出來了。

import warningsdef do_warning(): warnings.warn('deprecated', DeprecationWarning)with warnings.catch_warnings(record=True) as w: do_warning() if len(w) >0:print(w[0].message)

運行后,效果如下

python捕獲警告的三種方法

以上就是python捕獲警告的三種方法的詳細內容,更多關于python 捕獲警告的資料請關注好吧啦網其它相關文章!

標簽: Python 編程
相關文章:
主站蜘蛛池模板: 亚洲一区日韩一区欧美一区a | 久久精品vr中文字幕 | 日韩a无吗一区二区三区 | 杨幂丝袜国产福利视频 | 成年人在线观看网站 | 毛片毛片毛是个毛毛片 | 欧美高清在线精品一区二区不卡 | 久久久久久久久久免免费精品 | 午夜欧美成人久久久久久 | 一区视频 | 国产九九视频在线观看 | 亚洲精品日韩一区二区 | 免费欧美在线视频 | 久久黄色片| 韩国美女爽快一毛片免费 | 日韩黄色片在线观看 | 国产乱子精品免费视观看片 | 亚洲图片视频在线 | 大伊香蕉精品视频在线天堂 | 香蕉久 | 欧美一级艳片视频免费观看 | 国产成人ay手机在线观看 | 亚洲精品在线视频 | 欧美日本亚洲国产一区二区 | 中文字幕s级优女区 | 久久久一本精品99久久精品66 | 中文字幕在线视频网站 | 久热色 | 一个人看的www片免费视频中文 | 99九九99九九九视频精品 | 久久无码av三级 | 成人深夜福利在线播放不卡 | 欧美精品色精品一区二区三区 | 久久国产影视免费精品 | 高清一区二区三区四区五区 | 免费高清欧美一区二区视频 | 日本无卡码一区二区三区 | 免费久久久久 | jyzzjyzz国产免费观看 | 手机看片免费基地你懂的 | 亚洲国产品综合人成综合网站 |