欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

python捕獲警告的三種方法

 更新時間:2021年03月13日 16:35:06   作者:寫代碼的明哥  
這篇文章主要介紹了python捕獲警告的三種方法,幫助大家更好的理解和學(xué)習(xí)使用python,感興趣的朋友可以了解下

1. 警告不是異常

你是不是經(jīng)常在使用一些系統(tǒng)庫或者第三方模塊的時候,會出現(xiàn)一些既不是異常也不是錯誤的警告信息?

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

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

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

2. 警告能捕獲嗎

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

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

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

3. 捕獲警告方法一

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

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

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

import warnings
warnings.filterwarnings('error')    

try:
    warnings.warn("deprecated", DeprecationWarning)
except Warning as e:
    print(e)

運行后,效果如下

4. 捕獲警告方法二

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

import warnings

try:
    warnings.warn("deprecated", DeprecationWarning)
except Warning as e:
    print(e)

可以在執(zhí)行的時候,只要加上一個參數(shù) -W error ,就可以實現(xiàn)一樣的效果

$ python3 -W error demo.py
deprecated

5. 捕獲警告方法三

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

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

import warnings

def 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捕獲警告的三種方法的詳細內(nèi)容,更多關(guān)于python 捕獲警告的資料請關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • python自動生成model文件過程詳解

    python自動生成model文件過程詳解

    這篇文章主要介紹了python自動生成model文件過程詳解,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值
    2019-11-11
  • python如何處理程序無法打開

    python如何處理程序無法打開

    在本篇文章里小編給大家整理是一篇關(guān)于python解決程序無法打開的相關(guān)文章內(nèi)容,需要的朋友們可以學(xué)習(xí)下。
    2020-06-06
  • python求解三角形第三邊長實例

    python求解三角形第三邊長實例

    這篇文章主要介紹了python求解三角形第三邊長實例,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-05-05
  • python畫圖--輸出指定像素點的顏色值方法

    python畫圖--輸出指定像素點的顏色值方法

    今天小編就為大家分享一篇python畫圖--輸出指定像素點的顏色值方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-07-07
  • Python Web編程之WSGI協(xié)議簡介

    Python Web編程之WSGI協(xié)議簡介

    這篇文章主要介紹了Python Web編程之WSGI協(xié)議,簡單說明了WSGI的概念、功能并結(jié)合實例形式分析了Gunicorn和uWSGI相關(guān)實現(xiàn)技巧,需要的朋友可以參考下
    2018-07-07
  • python實現(xiàn)批處理文件

    python實現(xiàn)批處理文件

    這篇文章主要為大家詳細介紹了python實現(xiàn)批處理文件,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2020-07-07
  • python數(shù)據(jù)結(jié)構(gòu)之圖的實現(xiàn)方法

    python數(shù)據(jù)結(jié)構(gòu)之圖的實現(xiàn)方法

    這篇文章主要介紹了python數(shù)據(jù)結(jié)構(gòu)之圖的實現(xiàn)方法,實例分析了Python圖的表示方法與常用尋路算法的實現(xiàn)技巧,需要的朋友可以參考下
    2015-07-07
  • python 實現(xiàn)PIL模塊在圖片畫線寫字

    python 實現(xiàn)PIL模塊在圖片畫線寫字

    這篇文章主要介紹了python 實現(xiàn)PIL模塊在圖片畫線寫字,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-05-05
  • pyspark創(chuàng)建DataFrame的幾種方法

    pyspark創(chuàng)建DataFrame的幾種方法

    為了便于操作,使用pyspark時我們通常將數(shù)據(jù)轉(zhuǎn)為DataFrame的形式來完成清洗和分析動作。那么你知道pyspark創(chuàng)建DataFrame有幾種方法嗎,下面就一起來了解一下
    2021-05-05
  • python實現(xiàn)計算器簡易版

    python實現(xiàn)計算器簡易版

    這篇文章主要為大家詳細介紹了python實現(xiàn)計算器簡易版,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2020-12-12

最新評論