【问题标题】:How do I suppress a warning in the IDE in Python? (IDE is Jupyter)如何在 Python 中抑制 IDE 中的警告? (IDE 是 Jupyter)
【发布时间】:2020-11-06 13:45:17
【问题描述】:

有没有一种简单的方法可以隐藏 IDE 打印输出中的错误?

logts = np.log(ts)
plt.plot(logts, amps, "1", ms=10)

是我的相关代码部分。由于ts 包含一个0 作为它的第一个点,Python 并不太喜欢np.log(ts) 操作。 IDE(Jupyter)抛出错误消息

C:\ProgramData\Anaconda3\lib\site-packages\ipykernel_launcher.py:119: RuntimeWarning: 除以零在日志中遇到

但是代码的其余部分运行良好,相关的结果对(ts = 0 和各自的amps 值在绘制最佳拟合线以停止无穷大问题时无论如何都会被删除。但我仍然想禁止显示该特定错误消息,因为我知道是什么原因造成的,否则一切正常。

【问题讨论】:

  • 我认为其中可能有一些东西会有所帮助,但我必须承认对这一切还很陌生,我并不真正了解如何实现其中的大部分,并尝试实现它,没有不适合我。
  • 如果您没有使用或显示结果,为什么不在计算对数之前简单地丢弃零?
  • 我不太确定该怎么做,并丢弃各自的“amps”结果。我只是在另一个关于另一个问题的帖子的帮助下才真正做到了另一种方式。我很早就开始学习python中的任何东西,所以......一点一点......我确实尝试过最初但我尝试过的许多方法要么导致代码没有运行,要么最终真的丢掉了图表跨度>

标签: python exception error-handling runtime-error suppress-warnings


【解决方案1】:

你可以使用

import warnings; 
warnings.simplefilter('ignore')

在程序开始时忽略所有警告。


如果您只想忽略该特定警告,请使用“seterr”

np.seterr(divide = 'ignore') 
logts = np.log(ts)
np.seterr(divide = 'warn') 

【讨论】:

  • 这会忽略所有警告还是只忽略特定警告(这是我的目标)?
  • 通过编辑主要答案来编写任何代码可能比尝试在 cmets 中编写代码更容易。至少在我的经验中
  • 查看改进后的答案。
  • 是的,但是如果您正在做一个大项目,那么如果您再次需要这些变量,那么注释和取消注释行将成为一项无聊的任务。
  • 做到了。谢谢你,两个答案。目前我的程序只有大约 147 行,实际上可能 120 行有文本,所以你是对的,随着项目规模的增加,我可能需要使用更大规模的。现在评论还不错。谢谢。
猜你喜欢
  • 1970-01-01
  • 2018-03-29
  • 1970-01-01
  • 2019-04-02
  • 2022-07-27
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多