显示返回“空片均值”的行

问题描述

我的代码中有多个实例,用于计算列表的平均值。因此,我正在寻找一种方法来显示代码行,与任何普通错误一样,在其中出现“空片均值”警告。

输入是常规列表np.array([1,2,3])或numpy列表 File "file_name.py",line <line_number> in <folder_number>

所以我想要这样的东西: test1 = np.mean([1,3]) print('test1',test1)

到目前为止,我可以打印出所有均值计算结果,如下所示:

directory <- paste0(format(Sys.time(),"%Y%m%d%H%M%S"),rnorm(1),rnorm(1))
dir.create(directory)
setwd(directory)

但是,我认为,对于代码中有许多此类计算的情况而言,这是多余的。

是否可以更改警告的配置,以使其返回此信息?

解决方法

您可以使用np.seterr(all='raise')将所有numpy警告升级为错误。

这样,您的代码将在出现空片时抛出异常并中断,您将能够看到它发生的位置:

>>> import numpy as np
>>> np.seterr(all="raise")
{'divide': 'warn','over': 'warn','under': 'ignore','invalid': 'warn'}
>>> np.mean([]) # raises FloatingPointError

相关问答

依赖报错 idea导入项目后依赖报错,解决方案:https://blog....
错误1:代码生成器依赖和mybatis依赖冲突 启动项目时报错如下...
错误1:gradle项目控制台输出为乱码 # 解决方案:https://bl...
错误还原:在查询的过程中,传入的workType为0时,该条件不起...
报错如下,gcc版本太低 ^ server.c:5346:31: 错误:‘struct...