安装和导入python包

时间:2014-01-14 12:33:05

标签: python-2.7 pip packages easy-install

我是一个相对较新的python用户,而且我一直遇到这个问题(也许很简单?)问题,这实际上阻碍了我的进步。

这是问题所在。每当我尝试使用pip或easy_install安装软件包时,我都会收到错误消息,说我的用户配置文件无法访问安装目录。不过,我是我电脑的管理员。安装永远不会使用easy_install完成(我得到下面的错误),但它最终完成使用pip,但我不能在安装后导入包 - 我得到通常的“没有名为[module name]的模块”错误。

Easy_install error message:
error: can't create or remove files in install directory

The following error occurred while trying to add or remove files in the
installation directory:

    [Errno 13] Permission denied: '/Library/Frameworks/Python.framework/Versions/7.3/lib/python2.7/site-packages/test-easy-install-3280.write-test'

The installation directory you specified (via --install-dir, --prefix, or
the distutils default setting) was:

    /Library/Frameworks/Python.framework/Versions/7.3/lib/python2.7/site-packages/

Perhaps your account does not have write access to this directory?  If the
installation directory is a system-owned directory, you may need to sign in
as the administrator or "root" account.  If you do not have administrative
access to this machine, you may wish to choose a different installation
directory, preferably one that is listed in your PYTHONPATH environment
variable.

For information on other options, you may wish to consult the
documentation at:

  http://packages.python.org/distribute/easy_install.html

Please make the appropriate changes for your system and try again.

2 个答案:

答案 0 :(得分:1)

与virtualenv相比,更简单的可能性是通过键入以下命令在主目录中安装包:

easy_install --user <package> 

您的软件包将安装在〜/ .local / lib / python2.7中,它位于python软件包的默认路径中。

这与平台无关。从你的输出我猜你正在使用Linux。在Windows上,如果您使用的是标准Python安装,则easy_install始终需要管理员权限。

答案 1 :(得分:0)

当您尝试在全局包文件夹中安装时,您需要使用sudo(/ Library/Frameworks/Python.framework/Versions/7.3/lib/python2.7/site-packages /),您的用户显然没有该文件夹的写入权限。

虽然sudo将帮助您超越此限制,但请查看virtualenv以创建单独的独立环境,您可以在其中安装不同的包而不会重叠。此外,OS X附带的Python显然是修改后的版本,因此您最好安装一个完整的独立版本。这样,如果Apple升级Python版本(或者不需要,并且需要不同的版本),您将不会受到影响。

我发现this article相当擅长让我在OS X上运行Python。