当前位置: 首页>>技术教程>>正文


没有名为django的模块,但它已安装

, , ,

问题描述

我有两个版本的python 2.7和3.4并通过pip安装了django。它显示在ubuntu终端:

$ pip freeze
Django==1.6.11
$ pip --version
pip 1.5.4 from /usr/lib/python2.7/dist-packages (python 2.7)
$ python
Python 2.7.9 (default, Feb  3 2016, 02:50:32) 
[GCC 4.8.4] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>>import django
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ImportError: No module named django
>>> import sys
>>> sys.path
['', '/usr/local/lib/python27.zip', '/usr/local/lib/python2.7', '/usr/local/lib/python2.7/plat-linux2', '/usr/local/lib/python2.7/lib-tk', '/usr/local/lib/python2.7/lib-old', '/usr/local/lib/python2.7/lib-dynload', '/usr/local/lib/python2.7/site-packages']
>>> 

任何的想法??

最佳解决方案

可能,pip将软件包安装到dist-packages目录中,该目录未包含在PYTHONPATH环境变量中。你有几个解决方案:

  1. 在使用pip之前,为您的项目创建和配置virtualenv。这是最恐怖的方式

  2. 尝试使用内置 pip module安装Django

    python -m pip install django
    

    此命令应将软件包安装到site-packages目录中。

  3. 您也可以将dist-packages添加到您的PYTHONPATH。这个问题可以帮到你:How to globally modify the default PYTHONPATH (sys.path)?

次佳解决方案

使用时出现此错误

python manage.py runserver #python version 3 was being used

使用以下方法解决了问题:

python2 manage.py runserver #python version 2

参考资料

本文由Ubuntu问答整理, 博文地址: https://ubuntuqa.com/article/6853.html,未经允许,请勿转载。