ImportError: numpy.core.multiarray failed to import和AttributeError: _ARRAY_API not found问题解决方法
不知道大家有没有遇见过跑一些模型时出现numpy.core.multiarray failed to import的错误,博主在跑模型时使用sklearn的标准化函数:from sklearn.preprocessing import scale 时出现两个错误:
①
from sklearn.preprocessing import scale AttributeError: _ARRAY_API not found
②
ImportError: numpy.core.multiarray failed to import
这两个错误通常是说numpy库太新了,应用旧版本的即可运行,那么理论上来说只用把numpy库进行降级,从2.多降到1.多即可,博主也参考了几篇文章:
解决numpy.core.multiarray failed to import(numpy不降级方案)-CSDN博客
当前python第三方包版本太高,如何降低版本_pandas版本 降级 1.2.4-CSDN博客
里面的方法以及建立虚拟环境安装numpy都试了,就是无法降级,在cmd窗口中会出现这个错误:
ERROR: Failed building wheel for numpy
而后搜索得知,需要安装whl文件,在很多博客中写的下载whl文件的网址:
实际打开网站后发现页面已经移动,说明在这个网站下载不了。那么,如何使用别的方法把numpy降级呢?通常来说很多库或管理器出现问题很多情况下是版本太新了,导致兼容等方面出现错误,从在cmd下载numpy的命令中:pip install numpy中可以发现,是在pip中安装numpy,那无法build wheel for numpy是不是因为pip的问题呢?想到这里,博主发现前不久刚更新了pip升级到最新版本,那么是不是把pip降级后再重新安装numpy就可以呢?让我们试一试吧!
博主原先的numpy版本是2.1.3,pip版本是24.3.1,打开cmd窗口,首先,把numpy卸载:
pip uninstall numpy
把pip也卸载:
python -m pip uninstall pip
去PyPI官网:
下载旧版本的pip,这里博主是下载22.0.1版本的(注:pip降级的方法也适用于cmd窗口中出现WARNING: There was an error checking the latest version of pip.错误时使用):

点进去,点击Download files:

下载Source Distribution:

下载好后,把文件解压到自己的python目录:python3.11.1\Lib\site-packages\,然后进入这个解压后的文件中,在文件资源管理器的文件路径框那里输入cmd(这样就没必要再去环境配置那增添路径了):
(点击进入这个文件中)

(点击框起来的这个文件路径框)

(输入cmd,然后回车进入)

(成功进入该目录的cmd)
在这个cmd中输入:
python setup.py install
即可成功安装此版本的pip,检测一下是否安装成功:
pip -V
若版本对的上,则成功安装!
此时,关掉此cmd窗口,重新打开路径是C盘的cmd(默认路径,即在电脑搜索框中输入cmd点击进入即是默认的路径),输入:
pip install numpy==1.26.4
即可安装成功降级后的numpy库(博主这里选用1.26.4的numpy版本)。如果你是用pycharm的,则也可以在这里面指定版本进行重新下载:

最后一点碎碎念:如果你经常在cmd中进行库安装等操作,会发现cmd经常弹出有新版本的pip建议你安装,但是最好不要安装新版本的pip,因为安装最新版本容易出现不兼容的情况,到时再处理也挺麻烦的,然后像numpy这种也建议不要安装太新的,因为网上很多教程里的代码用的numpy库基本上是1.几版本的,如果安装太新的容易出现某个函数不存在等情况(当然,如果你经常阅读numpy网站上更新信息的、了解哪些函数等被替换、处理的可以自行选择更不更新)。
如果以上方法还是解决不了情况的话,可以尝试不用pip,用conda进行安装(缺点是还需要在安装anaconda应用程序),或者还是要下载whl文件的话直接去PyPI官网搜索所需安装的库进去安装whl文件即可,其余配置教程可以在网上自行搜索。
更多推荐
所有评论(0)