[英]Import Error: No module named django
我正在使用 centos linux。
我有 python 2.6 和 django,现在我升级到 python 2.7。
Python 2.6 位于 /usr/lib/python2.6。
Python 2.7 位于 /usr/local/lib/python2.7。
它们都有站点包目录,并且都包含 django 1.2。
如果我运行 python 我得到 2.7 版本。
我的问题是,如果尝试导入 django 我得到
ImportError:没有名为 django 的模块
我不确定我的 PYTHONPATH 在哪里定义,如果这是我需要更改的。 任何人?
我最终建立了一个指向 2.6 站点包目录的符号链接。
我有同样的错误,这解决了我的问题
python -m pip install django
:) 完毕!
要检查您的路径,您可以使用以下代码:
import sys
print(sys.path)
如果您已经知道 django 的安装位置,那么应该很容易测试所需的目录是否在您的路径中, directory in sys.path
。
关于PYTHONPATH
的定义位置,请注意它是一个环境变量,因此您可以使用以下命令检查其值(如果已定义): echo $PYTHONPATH
在 linux 下,您可以在 .profile 或 .bashrc 中设置 PYTHONPATH 环境变量。 您可以通过切换到您的主目录 (cd ~) 直接从终端编辑它,然后编辑文件 (nano .bashrc),或者使用 gtkedit 或 vim 或其他任何方式打开文件,然后添加:
PYTHONPATH=/usr/local/lib/python2.7/site-packages:/another/path/etc
如果您想在编辑配置文件之前对此进行测试,您可以从终端将其导出为:
export PYTHONPATH=/local/lib/python2.7/site-packages
我假设您直接从命令行运行它。 如果您在 apache 中将其作为 wsgi 模块运行,则可以将其从 wsgi 文件添加到 syspath,如下所示:
import sys
sys.path.append('/usr/local/lib/python2.7/site-packages')
尝试
pip freeze
此命令显示您的系统中安装了哪些软件包,然后以 root 权限运行
pip install django
然后使用命令创建一个新项目
django-admin.py startproject mysite
然后开始你的项目
cd path/to/mysite
./manage.py runserver
在文件 wsgi.py 添加此行
import os
import sys
DJANGO_PATH = os.path.join(os.path.abspath(os.path.dirname(__file__)), '..')
sys.path.append(DJANGO_PATH)
尝试打印sys.path
以查看路径中的内容。 Django 需要在列出的目录之一中。 Windows 上的示例:
>>> import sys
>>> for p in sys.path: print p
C:\Python27\Lib\idlelib
C:\Windows\system32\python27.zip
C:\Python27\DLLs
C:\Python27\lib
C:\Python27\lib\plat-win
C:\Python27\lib\lib-tk
C:\Python27
C:\Python27\lib\site-packages
>>>
django 在升级到 python 3.7 时丢失了
pip3 install django
解决了这个问题。
如果您使用的是环境,请使用:
$ <environment_location>/<environment_name>/bin/python manage.py runserver
python3 -m django --version1
对我来说就是这样^
我也有同样的错误,但很容易解决。使用 Django 和 python 3.0 版本 4 及更高版本的用户可以执行以下操作(适用于 Windows)
pip install virtualenv #在电脑上安装虚拟环境
py -m venv myvenv #在文件夹内创建名为myvenv的虚拟环境
myvenv/Scripts/activate #激活虚拟环境
您现在已准备好 go。
pip 安装 django # pip 安装 django
python -m django --version # 检查安装的版本 django
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.