pipx如何知道使用哪个Python版本?



我是一个强大的pyenvpoetry用户,开始使用pipx,并希望了解更多关于它是如何工作的。具体来说,我想了解它是如何确定安装时使用哪个Python版本的。

我注意到,当您使用pipx install <package>使现有安装可全局访问时,它似乎搜索PATH以查找对应用程序的现有引用。例如,这在pyenv中工作得很好,pipx将在通过pyenv安装的任何Python版本中找到您安装的包的版本。

pipx install cookiecutter
⚠️  Note: cookiecutter was already on your PATH at ~/.pyenv/shims/cookiecutter
installed package cookiecutter 1.7.3, Python 3.9.6
These apps are now globally available
- cookiecutter
done! ✨ 🌟 ✨

但是如果它是一个你以前从未安装过的包呢?并且有一个与3.6,3.7,3.8兼容的包版本-安装这个包时如何确定使用Python版本?

我发现您可以提供PipX应该安装包的Python版本,方法是将其作为install命令的参数提供(见下文)。

更具体地说,当使用pyenv时,您可以切换到您想要安装的版本,然后提供$(which python)来自动提供该python版本的路径…

pyenv shell 3.X.X
pipx install <package-name> --python $(which python)

最新更新