Pip3没有将用户范围的软件包安装到〜/ .local / bin

时间:2017-10-27 20:20:14

标签: python macos pip

我最近使用以下命令安装了pipenvpip3 install --user pipenv。 (值得一提的是,我正在遵循Python的官方指南here。)大多数在线资源似乎表明用户范围包的默认安装目录位于{{ 1}}。但是,我~/.local/bin的安装似乎位于pipenv。我担心将安装保存在特定于版本的目录(即Python 3.6)中会导致出现问题。发生了什么?我应该担心吗?

1 个答案:

答案 0 :(得分:2)

这是完全正确的行为,而不是您需要担心的事情。

具有本机编译扩展的Python包与安装它的特定Python版本相关联,不应共享。由于您无法检测先验包将包含本机扩展,因此所有 Python包安装在特定于版本的位置。

--user开关安装在User Scheme location

  

使用Python 2.6来了"user scheme" for installation,这意味着所有Python发行版都支持特定于用户的备用安装位置。每个操作系统的默认位置在site.USER_BASE变量的python文档中进行了解释。可以通过指定pip install的{​​{3}}选项打开此安装模式。

您始终可以通过以下方式列出USER_BASE位置:

python3 -m site

(使用与pip命令相关的相同Python二进制文件)。

Python模块搜索路径自动包含用户位置,并且因为该位置是Python版本(major.minor)特定的,所以不会干扰其他Python版本。

~/Library/Python/3.6/是您拥有--user时使用的 Mac OS X 特定路径。您可以通过设置framework build来覆盖路径。