安装numpy后,如何解决报错dll load failed?
发布于 作者:苏南大叔 来源:程序如此灵动~
本文阐述一个python的小问题,numpy安装完成后,报错dll load failed的问题。解决方案是挺简单的,就是大家可能会傻眼之后,想不到这么做。

本文测试环境:win10,vscode@1.50.1,coder runner@0.11.1。
报错信息
首先呢,是要在vscode里面使用.py文件,代码如下:
import numpy as np报错没有找到numpy模块,那么就安装这个模块好了。但是,由于苏南大叔的测试环境是基于conda的,所以安装代码是有所不一样的。我的基本测试python环境名字是:your_env_name,执行的代码是:
conda activate your_env_name
conda install numpy -y
继续报错
安装完成numpy后,使用code runner继续执行当前.py文件,继续报错。报错信息如下:
[Running] set PYTHONIOENCODING=utf8 && D:\anaconda3\envs\your_env_name\python.exe "c:\Users\sunan\Desktop\py\009\main.py"
Traceback (most recent call last):
File "D:\anaconda3\envs\your_env_name\lib\site-packages\numpy\core\__init__.py", line 22, in <module>
from . import multiarray
File "D:\anaconda3\envs\your_env_name\lib\site-packages\numpy\core\multiarray.py", line 12, in <module>
from . import overrides
File "D:\anaconda3\envs\your_env_name\lib\site-packages\numpy\core\overrides.py", line 7, in <module>
from numpy.core._multiarray_umath import (
ImportError: DLL load failed: 找不到指定的模块。这里显示一些dll没有找到,这个问题似乎很棘手。

解决方案
主要的问题,就还是需要先查看下面的文章。
苏南大叔建议不要使用code runner,即使配置执行conda的虚拟环境里面的python,还是会出现问题。因为默认情况下,并不会自动执行conda activate命令。当然,您也可以配置coder runer的executorMap,添加conda activate的类似命令。

所以,卸载这个问题百出的code runner插件,换成vscode原本的执行按钮就可以了。因为原本的执行按钮,会自动执行conda activate命令,就不会报错dll没有找到了。
如果卸载code runner插件之后,可能会碰到右上角没有可执行按钮的情况。这个时候,可能会根据提示,安装python插件即可。如图所示:


相关链接
总结
总结就是:vscode的code runner插件不好用,无法自动执行conda activate命令。导致出现较大的后续问题。更多python系列文章,请支持苏南大叔的博客文章: