python 位置参数溢出_如何在Python中检查数值溢出而不发出警告?

我有一个表达式对某些参数值溢出。在这个例子中,我已经用笔和纸推导出了渐近结果,当我有这种情况时,我就用我的解析表达式来代替。在

目前,我的代码执行如下操作:values = ExpressionThatOverFlows()

# Check the ones that overflow

indOverFlow = isnan(values)

# Set them to the values I derived by pen and paper

values[indOverFlow] = derivedValues

我的问题是I/O会随着“警告”而爆炸。我知道警告我是件好事,但我已经明确地处理好了,所以我想让他们闭嘴。请注意,我不想让所有类型的“溢出”警告静音,只想让这里的那些。我原以为这样的事情会奏效,但却没有:

^{pr2}$

我已经检查过了,但我似乎找到了如何在整个会议期间或永远沉默这些警告,但这是我指出的不是我想要的。在

谢谢你的帮助,非常感谢。在

编辑:下面是一个小得多的代码,它产生了我遇到的问题:from scipy import log1p, exp

from numpy import array, isnan

a = array([0.2222, 500.3, 0.3, 700.8, 0.111])

values = log1p(-exp(-exp(10**a - 9**a)))

print values # Note the nan's

indOverflow = isnan(values)

values[indOverflow] = 0

请注意,最后我是如何“手动”修复问题的,但在I/O中发生的情况是:Warning: overflow encountered in power

Warning: overflow encountered in power

Warning: invalid value encountered in subtract

我在一个循环中进行这种计算,所以我想让这些消息静音(因为它们已经被修复了,而且打印它们需要很多时间)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值