【发布时间】:2020-01-18 15:21:51
【问题描述】:
我正在使用一个需要 NumPy 的包。直到现在它工作正常。但是今天,由于扩展了我的代码,我需要最新版本的 NumPy。旧版本是 17.something,我安装了最新版本。之后我面临下面提到的问题The detailed link of the question on Github
File "C:\Users\AppData\Local\Programs\Python\Python38-32\lib\site-packages\numpy\core\function_base.py", line 119, in linspace
raise TypeError(
TypeError: object of type <class 'numpy.float64'> cannot be safely interpreted as an integer.
【问题讨论】:
-
你能分享你的代码吗?
-
确定有问题的表达式,以及应该是整数但实际上来自浮点 dtype 数组的变量(例如索引)。较新的 numpy 加强了过去的一些自动转换。
-
@AMC 代码来自一个名为 cosmoTransitions 的包(由 4-5 个不同的代码组成)https://github.com/clwainwright/CosmoTransitions
-
这个错误是什么时候出现的?
-
看起来这是由于 1.18 的变化。在以前的版本(例如 1.17)中,对
num中的linspace使用浮点数会产生弃用警告(可能会被忽略)。最近,这已更改为错误。最简单的修复可能是恢复到早期的 numpy 版本。使用第三方库时,使用最新的 numpy 并不总是最好的主意。解决不兼容需要一段时间。
标签: python numpy package numpy-ufunc