【问题标题】:How to install package using built-in osx python?如何使用内置的 osx python 安装包?
【发布时间】:2014-05-05 12:25:32
【问题描述】:

我正在做 Alfred 工作流程。要执行它,请使用 OSX 内置的 python 解释器/usr/bin/python。对于开发,我使用来自 Homebrew 的 python。我已经通过pip install lxml 安装了lxml 包。

问题是如何使用系统内置的python将lxml包安装到用户指定的目录中?

【问题讨论】:

  • 什么是工作流目录?还有什么是阿尔弗雷德? :)
  • 我的意思是这个问题是 Alfred 特有的,还是您通常在寻找一种方法来安装 Python 包并将其包含到用户指定的文件夹中?
  • @jsalonen 我正在寻找通用解决方案。 Alfred 是流行的生产力应用程序,仅作为示例提及。

标签: python macos pip homebrew


【解决方案1】:

您可以使用--user 开关将 Python 包安装到每个用户的文件夹中。例如:

pip install lxml --user

如果这还不够,您可以使用--root 并直接手动完成指定目标。例如,如果您的模块或位于 /module1 的任何东西,您可以在其下安装包:

pip install lxml --root /module1

这会导致lxml 安装在/module1/Python27/Lib/site-packages/lxml 文件夹下。

【讨论】:

    【解决方案2】:

    如果我对您的理解正确,您不会在系统范围内安装 lxml(默认 Python 所在的位置)。您可以尝试查找系统范围的 Python 解释器存储其包的位置。

    尝试在终端中输入:

    python -c "from distutils.sysconfig import get_python_lib; print(get_python_lib())"
    

    这将告诉您应该在哪里安装所需的软件包 (lxml)。

    【讨论】:

    • 我知道他特别不想使用系统范围的安装位置。无论如何都是好的提示!
    • 我想将包安装到用户指定的文件夹中。
    【解决方案3】:

    我解决了将 pip 安装到系统 python 中的这个问题:

    curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py
    sudo /usr/bin/python get-pip.py
    

    Pip 安装到目录:/Library/Python/2.7/site-packages/pip

    然后你可以使用 sudo 安装包:

    sudo pip install lxml

    你会得到这样的结果:

    /usr/bin/python -c 'import lxml; print(lxml.get_include())'
    ['/Library/Python/2.7/site-packages/lxml/includes', '/Library/Python/2.7/site-packages/lxml', '/Library/Python/2.7/site-packages/lxml/includes/libxml', '/Library/Python/2.7/site-packages/lxml/includes/libxslt', '/Library/Python/2.7/site-packages/lxml/includes/libexslt']`
    

    【讨论】:

      猜你喜欢
      • 2016-07-09
      • 2023-04-11
      • 2018-02-03
      • 2015-06-14
      • 2012-11-02
      • 2015-09-16
      • 1970-01-01
      • 1970-01-01
      • 2015-05-13
      相关资源
      最近更新 更多