系统学习Python——警告信息的控制模块warnings:暂时禁止警告

分类目录:《系统学习Python》总目录


如果明知正在使用会引起警告的代码,比如某个废弃函数,但不想看到警告(即便警告已经通过命令行作了显式配置),那么可以使用catch_warnings上下文管理器来抑制警告:

import warnings

def fxn():
    warnings.warn("deprecated", DeprecationWarning)

with warnings.catch_warnings():
    warnings.simplefilter("ignore")
    fxn()

在上下文管理器中,所有的警告将被简单地忽略。这样就能使用已知的过时代码而又不必看到警告,同时也不会限制警告其他可能不知过时的代码。注意:只能保证在单线程应用程序中生效。如果两个以上的线程同时使用catch_warnings上下文管理器,行为不可预知。

参考文献:
[1] Mark Lutz. Python学习手册[M]. 机械工业出版社, 2018.

你可能感兴趣的:(系统学习Python,Python,python,警告,warnings,warn,函数,类)