系统学习Python——警告信息的控制模块warnings:警告过滤器-[基础知识]
2024-01-08 21:47:38
分类目录:《系统学习Python》总目录
警告过滤器控制着警告是否被忽略、显示或转为错误(触发异常)。
从概念上讲,警告过滤器维护着一个经过排序的过滤器类别列表;任何具体的警告都会依次与列表中的每种过滤器进行匹配,直到找到一个匹配项;过滤器决定了匹配项的处理方式。每个列表项均为(action, message, category, module, lineno)
格式的元组,其中:
action
是以下字符串之一:default
:为发出警告的每个位置(模块+行号)打印第一个匹配警告error
:将匹配警告转换为异常ignore
:从不打印匹配的警告always
:总是打印匹配的警告module
:为发出警告的每个模块打印第一次匹配警告(无论行号如何)once
:无论位置如何,仅打印第一次出现的匹配警告
message
:包含正则表达式的字符串,警告信息的开头必须与之匹配。该表达式编译时不区分大小写。category
:警告类别的类(Warning
的子类),警告类别必须是其子类,才能匹配。module
:字符串,包含了模块名称必须匹配的正则表达式。该表达式编译时大小写敏感。lineno
:整数,发生警告的行号必须与之匹配,或为0表示与所有行号匹配。
由于Warning
类是由内置类Exception
派生出来的,要把某个警告变成错误,只要触发category(message)``即可。如果警告不匹配所有已注册的过滤器,那就会应用
default`动作。
文章来源:https://blog.csdn.net/hy592070616/article/details/135465467
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!