ImportError: Couldn’t import Django

首先初始化一个 django 项目

django-admin startproject xxx
cd xxx
python manage.py runserver
Traceback (most recent call last):File "manage.py", line 11, in mainfrom django.core.management import execute_from_command_line
ModuleNotFoundError: No module named 'django'   The above exception was the direct cause of the 
following exception:Traceback (most recent call last):File "manage.py", line 22, in <module>        main()File "manage.py", line 17, in main) from exc
ImportError: Couldn't import Django. Are you sure it's installed and available on your PYTHONPATH environment variable? Did you forget to activate a virtual environment?

这里困惑了一下,django 项目都可以初始化,难道还能是 django 没安上?稳期起见还是检查了一下,发现没有问题

django-admin --version
3.2.5

解决方法:使用 virtualenv

问题应该是电脑中安装了多个 Python 版本,这里发生了冲突,推荐使用 virtualenv

  1. 安装virtualenv
pip install virtualenv
  1. 使用 virtualenv 管理 Python 环境,这里会在文件夹中创建一个名为 env 的文件夹
virtualenv env
cd env/bin & lstree env/Scripts
# 我这个版本的 activate 在 Scripts
source env/Scripts/activate
# 以前的版本的 activate 在 bin
source env/bin/activate
  1. 此时运行 django 项目就没问题了
python manage.py runserver
  1. 关闭 virtualenv
deactivate