在Pipenv环境中运行Python代码遇Numba与NumPy版本匹配问题
问题排查与解决方法
1. 确认VS Code实际关联的是Pipenv环境
你从激活环境的CMD启动VS Code后,仍需验证环境是否真的生效:
- 点击VS Code右下角显示的Python版本号,在弹出的列表里确认选中的是Pipenv虚拟环境对应的Python路径(Windows一般是
./.venv/Scripts/python.exe,Linux/macOS是./.venv/bin/python)。 - 打开VS Code内置终端,输入
where python(Windows)或which python(Linux/macOS),查看输出路径是否指向虚拟环境内的Python,而非系统全局版本。
2. 清理缓存并重新安装依赖
可能存在依赖缓存或安装不完整的问题:
- 删除项目目录下的
__pycache__文件夹,以及Numba的缓存目录(通常是用户目录下的~/.numba或项目内的.numba文件夹)。 - 执行以下命令彻底重装指定版本的依赖:
pip uninstall numba numpy -y pip install numpy<=1.21 numba
3. 验证代码实际加载的依赖版本
在代码开头添加以下片段,运行后查看输出:
import numpy print(numpy.__version__) print(numpy.__file__)
如果版本不符合要求,或文件路径指向虚拟环境外,说明代码加载了其他位置的NumPy,需检查是否有手动修改sys.path的代码,或项目中存在同名模块干扰。
4. 检查VS Code配置
打开.vscode/settings.json,确保以下配置正确:
{ "python.pythonPath": "./.venv/Scripts/python.exe", // Windows环境路径 // "python.pythonPath": "./.venv/bin/python", // Linux/macOS环境路径 "python.terminal.activateEnvironment": true }
内容的提问来源于stack exchange,提问作者Saeed
相关产品推荐
相关产品推荐

