【问题标题】:Another Python Path Issue另一个 Python 路径问题
【发布时间】:2013-10-01 07:20:37
【问题描述】:

我使用的是Redhat Linux,默认的Python版本是2.6,所以我在/user/local/bin文件夹下安装了Python 2.7.4并修改了shell配置文件,所以当我这样做时:

$which python
/usr/local/bin/python

这很好。

由于我没有该框的超级用户权限,因此我尝试将 Python 库安装到我具有写入权限的文件夹中。这就是我的库的结构:

我创建了一个名为

的文件夹
/share/python

在该文件夹下,我创建了另一个名为 library 的文件夹,其中放置了所有 python 库源文件夹。假设我想安装 pyes (Python Elastic Search) 包。我首先下载了 source_folder,tar unzip 和 cd 到文件夹中。然后我做了

python setup.py install --prefix=/share/python

然后安装成功(I have done this before)并在下面创建了两个库文件夹

/share/python/lib/python2.7/site-packages/

他们是

urllib3-1.6-py2.7.egg 
pyes-0.20.1-py2.7.egg

当我打开 Python 时。打印出 sys.path 以仔细检查我的自定义库路径是否已包含在内。它是这样说的:

>>import sys
>>print sys.path
['','/usr/local/lib/python2.7/site-packages/...'..., '/share/python/lib/python2.7/site-packages']

而且我很确定 python 知道在哪里可以找到 pyes 和 urllib3(作为依赖项安装)。但是,我仍然无法加载库,错误如下所示:

>>> from pyes import *
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ImportError: No module named pyes
>>> import urllib3
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ImportError: No module named urllib3

知道为什么会这样吗?

更新: 您需要将这些新的 egg 文件夹添加到您的路径中,它将起作用: 仍然不太清楚为什么 python setup.py install 创建了两个eggs文件夹但不将它们添加到路径中。

【问题讨论】:

  • 你不能访问python-egg文件,禁止
  • @drabo2005 权限问题?这两个文件夹的所有者是我,权限级别是 drwxrwsr-x,我认为这已经足够了。对吗?

标签: python python-2.7 path


【解决方案1】:

I quote

http://peak.telecommunity.com/DevCenter/PythonEggs

.egg 文件只是重命名的 zip 文件。

使用您的 zip 程序打开 egg,或者只是将扩展名重命名为 .zip,然后解压。

"A small introduction to Python Eggs"

【讨论】:

  • 它在 Windows 中可能以压缩文件的形式存在,但在 Linux 中我看不到它是如何压缩的。但是,您的回答非常鼓舞人心,我尝试将这两个 egg 文件夹添加到 Python 路径中,现在它可以工作了。我想知道为什么 python setup.py install 没有为我添加它...
  • 我已经用一个链接更新了我的答案,这可能有助于您了解鸡蛋的工作原理
  • 你知道为什么python安装前缀命令没有将新创建的egg文件夹添加到python路径吗?在这种情况下,我能做些什么来自动包含鸡蛋文件夹。
  • 不,我不知道。我实际上并没有真正手动使用鸡蛋。我对它们唯一做的就是从 pypi 安装它们。这是什么蛋?
  • 只是一个包含pyes(python弹性搜索)和urllib3(依赖之一)模块的文件夹
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2019-09-03
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-05-09
  • 2020-07-26
相关资源
最近更新 更多