我在 Linux/Ubuntu 系统上,在 pyenv 指定为 Python 3.8.1 的文件夹中。我已经使用pip install pipx. 如果我安装一个应用程序 (cowsay),并为该应用程序激活虚拟环境,pip 会列出我全局安装的包。为什么我在激活虚拟环境时没有看到用于 cowsay 安装的站点包?
您可以从下面的示例中看到,pip list无论 virtualenv 的激活状态如何,都会给我相同的结果?我知道在项目开发过程中,这不是观察到的反应。当在 venv 中时,pip list 为我提供了安装在 venv 中的站点包。
pipx --verion
0.15.5.1
pip --version    
pip 20.2.3 from /home/steve/.pyenv/versions/3.8.1/lib/python3.8/site-packages/pip (python 3.8)
cd /home/steve/.local/pipx/venvs/
source activate cowsay/bin/activate
(cowsay):~/.local/pipx/venvs$ pip list
Package     Version
----------- --------
argcomplete 1.12.1
click       7.1.2
distro      1.5.0
packaging   20.4
pip         20.2.3
pipx        0.15.5.1
pyparsing   2.4.7
setuptools  41.2.0
six         1.15.0
userpath    1.4.1
(cowsay) :~/.local/pipx/venvs$ deactivate
:~/.local/pipx/venvs$ pip list
Package     Version
----------- --------
argcomplete 1.12.1
click       7.1.2
distro      1.5.0
packaging   20.4
pip         20.2.3
pipx        0.15.5.1
pyparsing   2.4.7
setuptools  41.2.0
six         1.15.0
userpath    1.4.1