Pip3 安装模块的位置在哪里?

12
  • Ubuntu 15.10
  • Python 3.4.3+
  • Django 1.8.7

当我在python3解释器中尝试import django时,它会显示ImportError: No module named 'django'。 我知道Django 1.8.7已安装,因为我可以通过在终端命令行中执行django-admin --version来获取版本号。

当我在Django项目目录中尝试python3 manage.py runserver时,出现以下错误:

Traceback (most recent call last):
  File "manage.py", line 8, in <module>
    from django.core.management import execute_from_command_line
ImportError: No module named 'django'

所以(如预期的那样),它不在Python可以找到的路径中。

我查看了/usr/local/lib/python3.4/dist-packages,但那是一个空目录。

我尝试了 whereis djangowhereis Django,但它们只是分别给我一行带有 django:Django:的输出,而没有任何路径列表。

我尝试在谷歌上搜索如何在Ubuntu中找到Django路径,但没有找到任何有用的信息。

我找到并检查了django-admin文件本身的代码,但它没有任何指示Django安装到哪里。奇怪的是,Python文件导入了django模块并且可以正常工作,即使解释器和Django项目文件无法看到django模块。所以它在Python路径上,但也不是?!?我不知道,在这过去的一个多小时中一直在尝试弄清楚这个问题,我非常困惑和沮丧。

以前的Ubuntu(或其他任何操作系统)我从来没有遇到过这样的问题。有人知道我如何找到Django安装的位置吗?实际上,我找不到任何通过pip3安装的模块。我已经试图弄清楚这个问题一个多小时了,我非常困惑和沮丧。

2个回答

20

通常在Python 3的dist-packages上使用pip 3进行安装

您始终可以使用以下命令来使用pip:

python3 -m pip install package

检查你是否在使用另一个Python3安装程序时遇到了问题

ls /usr/local/lib | grep python

但是避免这种头痛的简单方法是使用虚拟环境


好主意。它显示我的系统上有Python3.4和3.5。我不知道Ubuntu 15.10上有3.4和3.5两个版本。所以我尝试将python解释器启动为“python3.5”,而不仅仅是“python3”,然后Django就能工作了!所以,谢谢你!我从来没有想到Ubuntu会安装2个版本的Python3,并使默认版本成为旧版本,而pip3则默认安装新版本。他们以前从未这样做过。 - Zamphatta

4

我认为你将Django安装在虚拟环境之外。 请通过以下方式下载虚拟环境:

pip install virtualenv
virtualenv your_env

激活虚拟环境。

source your_env/bin/activate

然后,在您的虚拟环境中安装Django。


可以了,谢谢。虽然我不想使用virtualenv,但我希望这是系统级别的。 - Zamphatta
1
虚拟环境相对于全局可访问的安装方式增加了一些轻微的心理和过程负担,但提供了最大的灵活性。 - Sapanjeet

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接