python:easy_安装期间会发生什么?
我对egg文件和使用easy_install安装它们感到有点困惑,希望您能帮助我。(我读到人们对pip的建议,但我想在继续之前了解一下) 如果我简单地复制例如PYTHONPATH所指向的e,gpython:easy_安装期间会发生什么?,python,easy-install,Python,Easy Install,我对egg文件和使用easy_install安装它们感到有点困惑,希望您能帮助我。(我读到人们对pip的建议,但我想在继续之前了解一下) 如果我简单地复制例如PYTHONPATH所指向的e,gdjango_guardian-1.0.2-py2.6.egg,那么尝试通过import guardian导入内容将产生importError。即使复制了easy\u install.pth,也会发生此错误 import sys; sys.__plen = len(sys.path) ./django_gu
django_guardian-1.0.2-py2.6.egg
,那么尝试通过import guardian
导入内容将产生importError。即使复制了easy\u install.pth
,也会发生此错误
import sys; sys.__plen = len(sys.path)
./django_guardian-1.0.2-py2.6.egg
import sys; new=sys.path[sys.__plen:]; del sys.path[sys.__plen:]; p=getattr(sys
'__egginsert',0); sys.path[p:p]=new; sys.__egginsert = p+len(new)
现在,使用easy\u install django guardian
,当然没有这样的问题
我导航到了易于安装egg文件的目录,其中只包含
.pth
和.egg
文件。我想知道easy\u install会使第一个方法无法使用的其他过程/条目……easy\u install
使用.pth
文件将.egg
文件添加到sys.path
——Python搜索要导入的模块的位置列表
.pth
文件由站点
模块处理,但仅在四个预定义目录中处理。这些目录是特定于平台的,基于sys.prefix
和sys.exec\u prefix
设置。在Unix上,最突出的软件包通常是/usr/lib/pythonXX/site-packages
由于您的自定义目录不是站点处理的目录之一,因此您的.pth
文件将不会得到处理,Python也不会查看.egg
内部
有关更多信息,请参见。为什么要复制鸡蛋?还没有介绍自己认识virtualenv吗?@Nemoden,是的,我听说过virtualenv,但我很好奇为什么上面的方法不起作用。。