问题描述
使用NumPy库时遇到:AttributeError: module 'numpy' has no attribute 'float'.
具体报错提示:np.float
was a deprecated alias for the builtin float
. To avoid this error in existing code, use float
by itself. Doing this will not modify any behavior and is safe. If you specifically wanted the numpy scalar type, use np.float64
here.
The aliases was originally deprecated in NumPy 1.20; for more details and guidance see the original release note at:
https://numpy.org/devdocs/release/1.20.0-notes.html#deprecations. Did you mean: ‘cfloat’?
错误原因
这个错误提示是因为在运行的代码中使用了目前比较新的的NumPy版本(如numpy 1.25.2/1.26等版本),而它们中已经弃用了np.float
,不再使用这个别名,所以会导致该错误。
解决方法
方法1:将NumPy的版本降级,如降至指定的NumPy1.23.2版本,则成功解决了上述报错,下载命令:
pip install numpy==1.23.2
方法2:尝试在报错提示的文件中找到 np.float
并将其替换为 float
。