详解python Warning警告有哪些情况
摘要:
在很多代码中我们经常能看到一些代码能得到我们想要的结果,但是还会出现一些警告提示,这种情况一般出现情况会有好几种,下面就来细数一下所有类型警告和处理类。
在很多代码中我们经常能看到一些代码能得到我们想要的结果,但是还会出现一些警告提示,这种情况一般出现情况会有好几种,下面就来细数一下所有类型警告和处理类。
一、警告类
首先是基类Warning,是警告基类。我们在IDE中一般只会看到他的子类:
DeprecationWarning # 有关已弃用功能的警告的基类 PendingDeprecationWarning # 有关不推荐使用功能的警告的基类 RuntimeWarning # 有关可疑的运行时行为的警告的基类 SyntaxWarning # 关于可疑语法警告的基类 UserWarning # 用户代码生成警告的基类 FutureWarning # 有关已弃用功能的警告的基类 ImportWarning # 关于模块导入时可能出错的警告的基类 UnicodeWarning # 与Unicode相关的警告的基类 BytesWarning # 与bytes和bytearray相关的警告的基类 ResourceWarning # 与资源使用相关的警告的基类。被默认警告过滤器忽略。
二、实例代码处理方法
捕获警告,在退出上下文时恢复警告过滤器和 showwarning() 函数功能。如果 record 参数是 False (缺省值),则上下文管理器在入口处返回 None。
如果 record 是 True,则返回一个列表,该列表元素为 showwarning() 函数所见的对象,列表中的每个元素都具有与 showwarning() 的参数具有相同名称的属性。
import warnings warnings.simplefilter("always") def fxn(): warnings.warn("this is a warning", Warning) with warnings.catch_warnings(): warnings.simplefilter("ignore") fxn() with warnings.catch_warnings(Warning): warnings.warn("this is a warning2", Warning) warnings.warn("this is a warning3", Warning) def fxn2(): warnings.warn("deprecated", DeprecationWarning) with warnings.catch_warnings(record=True) as w: # Cause all warnings to always be triggered. warnings.simplefilter("always") # Trigger a warning. fxn2() # Verify some things assert len(w) == 1 assert issubclass(w[-1].category, DeprecationWarning) assert "deprecated" in str(w[-1].message)
以上就是详解python Warning警告有哪些情况的详细内容,更多关于python Warning警告的资料请关注脚本之家其它相关文章!
相关文章
Python Pygame实战之实现经营类游戏梦想小镇代码版
作为一名模拟经营类游戏的发烧友,各种农场类、医院类、铁路类的游戏玩儿了很多年。今天用代码给大家打造一款梦想小镇游戏,希望大家喜欢啦2022-12-12python生成可执行exe控制Microsip自动填写号码并拨打功能
这篇文章主要介绍了python生成可执行exe控制Microsip自动填写号码并拨打,在这需要注意一个问题,必须是已经运行Microsip.exe文件,具体实现代码跟随小编一起看看吧2021-06-06python聚类算法解决方案(rest接口/mpp数据库/json数据/下载图片及数据)
这篇文章主要介绍了python聚类算法解决方案(rest接口/mpp数据库/json数据/下载图片及数据),文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下2019-08-08
最新评论