激活virtualenv虚拟环境后运行Django服务器报错:找不到django模块
激活virtualenv后运行Django出现ModuleNotFoundError的解决方法
出现ModuleNotFoundError: No module named 'django'的常见原因及解决步骤如下:
原因1:虚拟环境中未安装Django
解决:
- 确保虚拟环境处于激活状态(命令行开头有
(虚拟环境名)标识),执行pip list查看已安装包,若没有Django,执行:
若项目需要指定版本,比如3.2.x,执行:pip install djangopip install django==3.2.18
原因2:虚拟环境激活未生效,实际使用系统全局Python
解决:
- 检查命令行开头是否有
(虚拟环境名)标识,没有则重新激活:- Windows系统:
.\你的虚拟环境名\Scripts\activate - Linux/macOS系统:
source 你的虚拟环境名/bin/activate
- Windows系统:
- 激活后执行
which python(Linux/macOS)或where python(Windows),确认输出路径指向虚拟环境目录下的Python,比如~/myenv/bin/python
原因3:项目创建时未在激活的虚拟环境中操作
如果项目是在全局Python环境下用django-admin startproject创建的,即使后来激活虚拟环境,也可能出现依赖路径问题。解决:
- 激活虚拟环境后重新安装对应版本的Django即可,无需重新创建项目
内容的提问来源于stack exchange,提问作者user17099102
相关产品推荐
相关产品推荐

