vscode下的anaconda环境中import numpy问题

在VSCode使用Anaconda环境下,随机出现DLL加载失败及mkl-service包导入问题,涉及numpy初始化错误。解决方法在于正确激活虚拟环境,确保Python解释器路径及环境变量设置正确。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

DLL LOAD FAILED && MKL-SERVICE PACKAGE FAILED TO IMPORT

(我觉得可能只有windows下有这问题)

好长时间了,在vscode搭配anaconda写python的时候,只要import numpy,就会随机出现这样的错误:

import numpy
E:\installed\Anaconda3\lib\site-packages\numpy_init_.py:140: UserWarning: mkl-service package failed to import, therefore Intel(R) MKL initialization ensuring its correct out-of-the box operation under condition when Gnu OpenMP had already been loaded by Python process is not assured. Please install mkl-service package, see http://github.com/IntelPython/mkl-service
from . import distributor_init
Traceback (most recent call last):
File "E:\installed\Anaconda3\lib\site-packages\numpy\core_init.py", line 24, in
from . import multiarray
File "E:\installed\Anaconda3\lib\site-packages\numpy\core\multiarray.py", line 14, in
from . import overrides
File "E:\installed\Anaconda3\lib\site-packages\numpy\core\overrides.py", line 7, in
from numpy.core._multiarray_umath import (
ImportError: DLL load failed: 找不到指定的模块。

有时候好,有时候就是不行,完全随机,这次决定好好想想这个问题。

vscode是这么运行python文件的:
& D:/Coding/miniconda3/envs/data/python.exe d:/Coding/python_work/test.py

可见只是用选择的环境下的python程序执行,但并没有将这个环境下的package目录作为环境变量添加,所以有些package找不到

所以,大家搜索解决方案中,绝大多数都告诉你,要把anaconda的scripts, bin, 根目录添加进环境变量。但这样不治本,因为这样添加的只是base环境,不可能把每个虚拟环境都添加进环境变量。

做了做实验验证了这种猜想:

  1. 在激活环境的终端里,进入python命令行,import numpy完全没问题。
  2. vscode中终端激活环境,手动运行python文件,没问题。

我的解决方案是:在你项目目录中打开终端,先激活相应的环境,再输入code .打开vscode,注意后面有一个.

这时,看下vscode中的终端,已经自动激活了相应环境,再运行就没问题了。
在这里插入图片描述

评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值