VSCode中Run Code调用Anaconda库而非venv的原因咨询
问题:VSCode中【Run Code】调用Anaconda库路径,【Run Python File】却正常使用venv虚拟环境
问题场景
在VSCode中完成以下操作后出现异常:
- 创建并激活了venv虚拟环境
- 在该环境内安装了所需依赖库
- 已选中对应venv的Python解释器
- 点击【Run Code】执行脚本时,抛出
ImportError,错误显示引用的是Anaconda路径下的langchain/text_spliter.py - 但使用【Run Python File】执行时,能正确调用venv文件夹内的库
原因分析
【Run Code】是VSCode的Code Runner插件提供的功能,和VSCode原生的【Run Python File】逻辑不同:
- 【Run Python File】会严格遵循你在VSCode中选中的Python解释器配置,直接调用venv里的Python来执行脚本
- Code Runner默认可能使用系统全局的Python解释器(这里就是Anaconda的),或者它的配置里没有指向venv的Python路径,导致执行时跳过了虚拟环境,直接调用了全局的Anaconda Python
解决方法
方法1:修改Code Runner的Python执行路径
- 打开VSCode设置(快捷键
Ctrl+,) - 搜索
code-runner.executorMap.python - 将配置值改为你当前venv的Python路径:
- Windows系统:
${workspaceFolder}/venv/Scripts/python.exe - Mac/Linux系统:
${workspaceFolder}/venv/bin/python
- Windows系统:
- 保存设置后重新点击【Run Code】即可
方法2:让Code Runner在终端执行
- 打开VSCode设置,搜索
code-runner.runInTerminal - 勾选这个选项
- 由于你已经激活了venv虚拟环境,终端会自动使用venv的Python解释器,此时【Run Code】就会调用虚拟环境里的库了
内容的提问来源于stack exchange,提问作者Nicholas
相关产品推荐
相关产品推荐

