广告
返回顶部
首页 > 资讯 > 后端开发 > Python >python捕获警告的三种方法
  • 334
分享到

python捕获警告的三种方法

2024-04-02 19:04:59 334人浏览 八月长安

Python 官方文档:入门教程 => 点击学习

摘要

目录1. 警告不是异常2. 警告能捕获吗3. 捕获警告方法一4. 捕获警告方法二5. 捕获警告方法三1. 警告不是异常 你是不是经常在使用一些系统库或者第三方模块的时候,会出现一些

1. 警告不是异常

你是不是经常在使用一些系统库或者第三方模块的时候,会出现一些既不是异常也不是错误的警告信息?

这些警告信息,有时候非常多,对于新手容易造成一些误判,以为是程序出错了。

实则不然,异常和错误,都是程序出现了一些问题,但是警告不同,他的紧急程度非常之低,以致于大多数的警告都是可以直接忽略的。

如果不想显示这些告警信息,可以直接加上参数  -W ignore 参数,就不会再显示了。

2. 警告能捕获吗

能捕获的只有错误异常,但是通过一系列的操作后,你可以将这些警告转化为异常。

这样一来,你就可以像异常一样去捕获他们了。

在不进行任何设置的情况下,警告会直接打印在终端上。

3. 捕获警告方法一

在 warnings 中有一系列的过滤器。

当你指定为 error 的时候,就会将匹配警告转换为异常。

之后你就可以通过异常的方式去捕获警告了。


import warnings
warnings.filterwarnings('error')    

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

运行后,效果如下

4. 捕获警告方法二

如果你不想对在代码中去配置将警告转成异常。


import warnings

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

可以在执行的时候,只要加上一个参数 -W error ,就可以实现一样的效果

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捕获警告的三种方法的详细内容,更多关于Python 捕获警告的资料请关注编程网其它相关文章!

--结束END--

本文标题: python捕获警告的三种方法

本文链接: https://www.lsjlt.com/news/121619.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • python捕获警告的三种方法
    目录1. 警告不是异常2. 警告能捕获吗3. 捕获警告方法一4. 捕获警告方法二5. 捕获警告方法三1. 警告不是异常 你是不是经常在使用一些系统库或者第三方模块的时候,会出现一些...
    99+
    2022-11-11
  • python捕获警告的方法有哪些
    本篇内容主要讲解“python捕获警告的方法有哪些”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“python捕获警告的方法有哪些”吧!1. 警告不是异常你是不是经常在使用一些系统库或者第三方模块...
    99+
    2023-06-14
  • python 忽略警告(warning)的几种方法
    文章目录 第一种:在终端运行py文件第二种:全文取消警告的输出第三种:部分代码取消警告 第一种:在终端运行py文件 python -W ignore file.py 不需要import w...
    99+
    2023-08-31
    warning python
  • python获取linux系统信息的三种方法
    方法一:psutil模块 #!usr/bin/env python # -*- coding: utf-8 -*- import socket import psutil class NodeResource(ob...
    99+
    2022-06-04
    python 获取系统信息 python 获取Linux信息
  • python捕获异常的方法是什么
    在Python中,可以使用try-except语句来捕获异常。 语法如下: try: # 可能会产生异常的代码块 excep...
    99+
    2023-10-26
    python
  • python捕获异常的方法有哪些
    在Python中,有以下几种方法可以捕获异常:1. try-except语句:使用try-except语句块可以捕获异常。在try块...
    99+
    2023-08-08
    python
  • win10永久删除广告弹窗的三种方法
      相信大家都被弹窗广告折磨过,小编也不例外,不知道要怎么删除广告弹窗好,而却最好是永久删除广告弹窗,小编今天就教你们3种方法,轻松解决这个问题!现在电脑上面下载的软件经常带一些各种各样的广告,每当玩游戏、看视频的时候突然跳出来,大家是不是...
    99+
    2023-07-10
  • python使用nb_log模块捕获日志的方法
    目录一、调研日志模块二、nb_log模块的使用1、安装方式 2、自动跳转功能 3、屏幕流日志效果4、将日志写入文件5、总结一、调研日志模块 我想写一个日志模块,首选是python内置...
    99+
    2022-11-12
  • JavaScript三种获取URL参数值的方法
    目录前言URLSearchParamsURL纯JS前言 在 URL 中,查询参数字符串值通常提供有关请求的信息,例如搜索参数或正在使用的对象的 ID。如果在前端处理任何业务或请求逻辑...
    99+
    2022-11-13
  • JAVA获取当前时间的三种方法
    1. 使用`java.util.Date`类:```javaDate date = new Date();System.out.pr...
    99+
    2023-09-01
    JAVA
  • java 获取当前时间的三种方法
    1. 使用System.currentTimeMillis()方法获取当前时间的毫秒数:long currentTime = Sys...
    99+
    2023-08-11
    java
  • python安装pillow的三种方法
    目录第一种方法第二种方法第三种方法安装pillow(python的图形界面库) 第一种方法 在Dos界面输入pip install pillow(但是不知为何总是失败);搞了好几次都...
    99+
    2022-11-12
  • python中的三种注释方法
    目录python注释方法方式1方式2方式3python小技巧 开头注释设置路径python注释方法 方式1 单行注释:shift + #(在代码的最前面输入,非选中代码进行注释)多行...
    99+
    2022-11-11
  • python多线程中获取函数返回值的三种方法
    目录方法一:使用队列方法二: 封装 threading.Thread,重写 run 方法方法三:使用进程池方法一:使用队列 import queue import threading...
    99+
    2023-03-01
    python多线程获取函数返回值 python多线程获取返回值
  • Python 获取线程返回值的三种方式
    提到线程,你的大脑应该有这样的印象:我们可以控制它何时开始,却无法控制它何时结束,那么如何获取线程的返回值呢?今天就分享一下自己的一些做法。方法一:使用全局变量的列表,来保存返回值ret_values = [] def thread_fu...
    99+
    2023-05-14
    Python CPython 返回值
  • Python异常捕获和处理的方法是什么
    1 | 语法错误指解析代码时出现的错误。当代码不符合Python 语法规则时,Python解释器在解析时就会报出 SyntaxError 语法错误,与此同时还会明确指出最早探测到错误的语句。例如:print "Hello,Worl...
    99+
    2023-05-23
    Python
  • Python中异常捕获与处理的方法总结
    Python异常是在程序执行时发生的错误,可能会导致程序终止运行。 在Python中,异常处理是一种机制,它允许开发人员在程序发生异常时捕获、处理和报告这些异常,以便程序可以继续运行...
    99+
    2023-05-18
    Python异常捕获 Python异常处理 Python异常
  • C#三种方法获取文件的Content-Type(MIMEType)
    什么是ContentType 我们知道浏览器可以处理各种各样的内容,比如:HTML、XML、JPG、Flash等等,那么浏览器是如何区分它们的呢?答案就是MIME Type,即资源的...
    99+
    2022-11-12
  • php获取文件扩展名的三种方法
    在php开发过程中,获取文件扩展名是非常常见的需求。比如我们在上传文件的时候,首先需要判断文件类型是否为我们允许上传的类型。这个时候就需要使用php来获取文件的后缀或者说扩展名。 本文中,我们介绍三种php获取文件扩展名的方法 方法一:使用...
    99+
    2023-09-28
    php 开发语言
  • 详解SpringBoot静态方法获取bean的三种方式
    目录方式一 注解@PostConstruct方式二 启动类ApplicationContext方式三手动注入ApplicationContext方式一 ...
    99+
    2022-11-12
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作