【问题标题】:Simple package imports resulting in divide by zero warnings简单的包导入导致除以零警告
【发布时间】:2020-08-09 12:26:01
【问题描述】:

当我导入许多库(例如 numpy、matplotlib 等)时,我会收到除以零的警告,这与我在代码中搞砸了 eqn 的情况大致相同。虽然这并不能阻止我使用该软件包,但它非常令人沮丧,而且由于我是 python 和学习的新手,我不知道如何抑制它们。

例如,仅运行“import numpy”会导致 12 条警告都与以下类似

C:\mydirectory\numpy\__init__.py:244: RuntimeWarning: divide by zero encountered in subtract
  if not abs(x.dot(x) - 2.0) < 1e-5:
C:\mydirectory\numpy\__init__.py:244: RuntimeWarning: divide by zero encountered in absolute
  if not abs(x.dot(x) - 2.0) < 1e-5:

有什么简单的解决方法吗?

【问题讨论】:

  • 能否请您提供完整的错误代码?
  • 这似乎是您正在导入的其中一个包中的错误,您对此无能为力。
  • 是的,当然:我已经包含了上面 12 个中的 3 个作为示例(仅包含 3 个,因为它基本上适用于标准库之外的每个单独的包。@Johannes - 为我的无知道歉,但是有没有一种简单的方法可以至少抑制警告?
  • 尝试重新安装numpy?这真的不应该发生,如果它继续发生,你可以在 numpy 的 github 页面上写一个关于它的问题,因为它看起来像是一个错误。

标签: python


【解决方案1】:

您可以使用 warnings 包来抑制来自不同包的所有警告。只需在代码开头添加以下行。

import warnings
warnings.filterwarnings("ignore")

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-03-10
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多