使用 pyenv 安装 python 后找不到 python3 命令



我用pyenv安装了一个特定版本的python。在终端中输入pyenv version时,我看到3.5.0 (set by /Users/lcherukuri/.python-version).但是当我输入python3时,我得到了python3 command not found。如何解决这个问题?pip3 也未找到

如果使用 pyenv 同时安装了 python 2.x 和 python 3.x,请运行以下命令以允许全局找到这两个版本(python、python2 和 python3 别名(。

添加您正在使用的特定版本:

pyenv global 3.8.3 2.7.18

>pyenv管理python3pip3等命令的填充程序可执行文件。如果 pyenv 的填充程序在您的 shell 中不可用,这通常意味着以下两种情况之一:

  • pyenv 未完全安装

  • pyenv 外壳功能未处于活动状态

由于您的 pyenv 命令正常工作但填充程序不起作用,这很可能意味着 shell 功能未激活。在撰写本文时,正确的方法是确保评估 init 命令输出。在 macOS 上,您可以将以下内容添加到 ~/.bash_profile:

eval "$(pyenv init -)"

较旧的安装说明可能不包含该步骤,或者只是将 pyenv 的 bin 目录添加到 PATH 中,这还不够。如果您使用了 pyenv 安装程序,则在安装过程结束时的警告中会提示此步骤。

pyenv只是一个Python版本管理器。即使您的$PATH中未安装python3它也可能能够看到已安装的 Python 3.X。

您需要在$PATH中添加python3。您可以在此处了解如何执行此操作。

默认情况下,MacOS 使用python3来区分本机预安装python(即 Python 2.7(和任何后安装的 Python 3.X 发行版。pippip3也是如此。

从有关管理版本的pyenv文档中:

查找 Python 安装

一旦 pyenv 确定了哪个 您的应用程序指定的 Python 版本,它传递 命令以及相应的 Python 安装。

每个 Python 版本都安装在 $(pyenv 下自己的目录中。 根(/版本。

例如,您可能安装了以下版本:

$(pyenv 根目录(/版本/2.7.8/

$(pyenv 根目录(/版本/3.4.2/

$(pyenvroot(/versions/pypy-2.4.0/

就pyenv而言,版本名称 只是 $(pyenv 根(/版本中的目录。

我在路径中有python3。我也执行了pyenv global 2.x.x 3.x.x.但我仍然遇到同样的错误。

最终对我有用的是在项目根目录中执行这一行(使用替换 3.X.X 的版本(

pyenv shell 3.X.X

注意:这设置了特定于 shell 的 python 版本,因此它并不是所发布问题的真正解决方案。只是让 python3 工作的解决方法。

最新更新