如何在 Linux 终端上抑制 Python DeprecationWarnings?

Som*_*DOS 3 python linux warnings deprecated

i18ndude使用easy_install.

当我尝试i18ndude在终端上运行该实用程序时,我得到:

/usr/local/lib/python2.6/dist-packages/i18ndude-3.1.2-py2.6.egg/i18ndude/odict.py:7: DeprecationWarning: object.__init__() takes no parameters
  dict.__init__(self, dict)
Run Code Online (Sandbox Code Playgroud)

从命令行调用实用程序时如何抑制这些警告消息?是否可以?我知道理论上我应该安装其他 Python 解释器,并从中调用 i18ndude,但我想要一种更简单的方法(比如参数或类似的东西)。

顺便说一句,我正在使用Plone 官方网站i18ndude的脚本。

Shi*_*zou 5

可以使用重定向,但它会抑制发送到该“流”的所有消息;例如

i178ndude 2>/dev/null

将流 2 发送到空设备(通常是程序的 stderr,但可以将弃用警告发送到其他流)。这就是“即使你不知道如何修复它”的修复方法。事实上,有一个选项 -W,可以像这样使用:-W ignore::DeprecationWarning或者简单地-W ignore忽略所有警告。您可以编写一个脚本来调用程序上的 python 解释器,或者更逻辑地修改#!prog 的内容,例如#!/usr/bin/env python -W ignore::DeprecationWarning