已用pip安装numpy等模块,Pycharm仍报ModuleNotFoundError如何解决?
解决PyCharm中
ModuleNotFoundError: No module named 'numpy'的问题 先搞懂虚拟环境是什么
简单说,虚拟环境就是给单个Python项目单独配的“专属Python环境”——每个项目可以装自己需要的包和版本,不会和电脑里全局的Python环境、其他项目的环境混在一起,避免包版本冲突的问题。你现在的问题大概率是:终端里把numpy装到了全局环境,但PyCharm默认给你的项目用了独立的虚拟环境,所以找不到包。
分步解决
1. 检查PyCharm当前用的Python解释器
- 打开PyCharm,顶部菜单栏点
File→Settings(Windows/Linux)或者PyCharm→Settings(Mac) - 找到
Project: [你的项目名称]→Python Interpreter - 看页面顶部的解释器路径,比如可能是
项目根目录/venv/bin/python(Mac/Linux)或者项目根目录\venv\Scripts\python.exe(Windows),这就是当前项目的虚拟环境解释器
2. 确认终端用的Python解释器
- 打开终端,输入
which python(Mac/Linux)或者where python(Windows),得到的路径如果和PyCharm里的不一样,就说明两个环境是分开的,你把numpy装到了终端的环境里,PyCharm自然找不到
3. 三种解决方法选一个就行
方法一:直接在PyCharm的虚拟环境里装numpy
- 在
Python Interpreter页面,点右边的+号 - 搜索框输入
numpy,选中后点Install Package,等安装完成就能正常导入了
方法二:让PyCharm用终端的Python解释器
- 在
Python Interpreter页面,点顶部解释器旁边的下拉箭头,选择Add - 选择
System Interpreter,找到终端里显示的那个Python路径(比如/usr/bin/python3或者C:\Python39\python.exe),选中后点OK,之后PyCharm就会用这个环境里已装的包
方法三:在终端激活PyCharm的虚拟环境再装包
- 找到你项目根目录下的
venv文件夹(PyCharm默认创建的) - Mac/Linux终端:输入
source venv/bin/activate,激活后终端前缀会变成(venv),然后输入pip install numpy - Windows终端:CMD里输入
venv\Scripts\activate.bat,PowerShell里输入venv\Scripts\Activate.ps1,激活后再执行pip install numpy
后续注意事项
- 以后装包前,先确认自己在哪个环境里:终端里如果有
(venv)前缀,就是在项目的虚拟环境里;没有就是全局环境 - 新建项目时,PyCharm会默认创建虚拟环境,如果你觉得麻烦可以选择用系统解释器,但虚拟环境能避免不同项目的包版本冲突,建议慢慢适应使用
内容的提问来源于stack exchange,提问作者Felix Irmentrud
相关产品推荐
相关产品推荐

