Python:warnings模块产生警告和忽略警告
【摘要】 产生警告
方法
warnings.warn(message, category=None, stacklevel=1, source=None)
1
category可选参数
Warning | 这是所有警告类的基类。它是异常的子类。
UserWarning | warn()的默认类别。
DeprecationWarning | 关于不推荐使用的功能的警告的基类...
产生警告
方法
warnings.warn(message, category=None, stacklevel=1, source=None)
- 1
category可选参数
Warning | 这是所有警告类的基类。它是异常的子类。
UserWarning | warn()的默认类别。
DeprecationWarning | 关于不推荐使用的功能的警告的基类别(默认情况下忽略)。
SyntaxWarning | 关于可疑语法特征的警告的基类。
RuntimeWarning | 关于可疑运行时功能的警告的基类别。
FutureWarning | Base类别,用于关于将来会在语义上发生变化的构造的警告。
PendingDeprecationWarning | 关于将来不推荐使用的功能的警告的基本类别(默认情况下忽略)。
ImportWarning | 导入模块过程中触发的警告的基本类别(默认情况下忽略)。
UnicodeWarning | 与Unicode相关的警告的基类别。
BytesWarning | 与字节和bytearray相关的警告的基类别。
ResourceWarning | 与资源使用相关的警告的基类别。
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
示例
# -*- coding: utf-8 -*-
import warnings
def foo(): warnings.warn("Deprecated", DeprecationWarning)
if __name__ == '__main__': foo()
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
过滤警告
方法
warnings.filterwarnings(action,message ='',category = Warning, module='',lineno = 0,append = False)
warnings.simplefilter(action, category = Warning,lineno = 0,append = False)
- 1
- 2
- 3
action是以下字符串之一:
error | 将匹配警告转换为异常
ignore | 不会打印匹配的警告
always | 总是打印匹配的警告
default | 打印发出警告的每个位置的首次出现的匹配警告
module | 将为发出警告的每个模块打印首次发生的匹配警告
once | 仅打印第一次匹配的警告,不管位置如何
- 1
- 2
- 3
- 4
- 5
- 6
示例
# 方式一
import warnings
warnings.filterwarnings("ignore")
foo()
# 方式二
with warnings.catch_warnings(): warnings.simplefilter("ignore") foo()
# 方式三:命令行方式
$ python -W ignore foo.py
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
文章来源: pengshiyu.blog.csdn.net,作者:彭世瑜,版权归原作者所有,如需转载,请联系作者。
原文链接:pengshiyu.blog.csdn.net/article/details/110374909
【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
评论(0)