分类目录:《系统学习Python》总目录
class warnings.catch_warnings(*, record=False, module=None)
该上下文管理器会复制警告过滤器和showwarning()
函数,并在退出时恢复。 如果record
参数是False
(默认),则在进入时会返回None
。 如果record
为True
,则返回一个列表,列表由自定义showwarning()
函数所用对象逐步填充(该函数还会抑制sys.stdout
的输出)。 列表中每个对象的属性与 showwarning() 的参数名称相同。
module
参数代表一个模块,当导入warnings
时,将被用于代替返回的模块,其过滤器将被保护。该参数主要是为了测试warnings
模块自身。注解catch_warnings
管理器的工作方式,是替换并随后恢复模块的showwarning()
函数和内部的过滤器种类列表。这意味着上下文管理器将会修改全局状态,因此不是线程安全的。