Pip 使用 virtualenv 在错误的目录中安装软件包

Gaz*_*zer 3 python pip python-3.x

在 OS X 上使用 Python 3.7 我设置了一个虚拟环境然后

    $ source venv/bin/activate
    $ pip install numpy
    $ which pip 
pip is /Users/me/PycharmProjects/Test1/venv/bin/pip
(venv) 
Run Code Online (Sandbox Code Playgroud)

而是安装在虚拟环境中而不是安装numpy

/usr/local/lib/python2.7
Run Code Online (Sandbox Code Playgroud)

并且numpy没有出现在pip list

通过 Python 下载或通过brew.

哪些可能的设置可能导致软件包安装在错误的位置。

Gaz*_*zer 6

回答我自己的问题。

有一种看不见的

~/.config/pip/pip.conf 
Run Code Online (Sandbox Code Playgroud)

文件。其中包含以下几行:

[global]
target = /usr/local/lib/python2.7/site-packages
Run Code Online (Sandbox Code Playgroud)

这个文件已经有几年了,所以我不确定它是如何到达那里的,但删除它解决了这个问题。

  • 不错的收获!默认情况下没有 pip.conf,但可以手动创建以自定义内容。所有可能的 pip.conf 位置(每个用户、每个 venv 和系统范围/全局,以及它们如何相互覆盖)都在 [此处列出](https://pip.pypa.io/en/stable/user_guide /#配置文件)。如果有人遇到问题,他们可以使用`pip config list` [command](https://pip.pypa.io/en/stable/reference/pip_config/) 来查看活动配置,或者`locate pip.conf`并“找到”它。 (2认同)