如何禁用 Python 警告?

新手上路,请多包涵

我正在处理使用 warnings 库引发很多(目前对我而言)无用警告的代码。阅读(/扫描)文档我只找到了一种 禁用单个功能警告的方法。但我不想更改太多代码。

是否有像 python -no-warning foo.py 这样的标志?

你会推荐什么?

原文由 Framester 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 624
2 个回答

-W 选项

 python -W ignore foo.py

原文由 Pavel Anossov 发布,翻译遵循 CC BY-SA 4.0 许可协议

查看 Python 文档的 Temporarily Suppressing Warnings 部分:

如果您正在使用您知道会引发警告的代码,例如已弃用的函数,但不想看到警告,则可以使用 catch_warnings 上下文管理器来抑制警告:

>  import warnings
>
> def fxn():
>     warnings.warn("deprecated", DeprecationWarning)
>
> with warnings.catch_warnings():
>     warnings.simplefilter("ignore")
>     fxn()
>
> ```

我不容忍它,但你可以用这个来 **抑制所有警告**:

import warnings warnings.filterwarnings(“ignore”)


前任:

import warnings def f(): … print(‘before’) … warnings.warn(‘you are warned!’) … print(‘after’) … f() before :3: UserWarning: you are warned! after warnings.filterwarnings(“ignore”) f() before after

”`

原文由 Mike 发布,翻译遵循 CC BY-SA 4.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题