【问题标题】:Setting global python version with pyenv is not working as expected使用 pyenv 设置全局 python 版本没有按预期工作
【发布时间】:2018-04-30 21:56:12
【问题描述】:

关于 pyenv: https://github.com/pyenv/pyenv

我有这个:

$ pyenv global 2.7
$ python --version
Python 3.6.4

我的 pyenv 版本是:

pyenv 1.2.2

有人知道为任何特定 shell(和子 shell)设置 python 版本的正确方法吗?

【问题讨论】:

  • 如果我没记错的话,你可以这样做pyenv shell X.X
  • @patrick,我得到了pyenv: no such command shell'`
  • 根据docs shell 命令应该是一个东西。但请注意请注意,您需要启用 pyenv 的 shell 集成(installation instructions 的第 3 步)才能使用此命令。看起来只需要将 pyenv init 添加到您的 shell
  • 你能发布命令echo $PATH的输出吗?

标签: python pyenv


【解决方案1】:

现在我有一些时间来详细说明我的评论。

docs 描述了用于此目的的 shell 命令,您可以像这样运行它:

pyenv shell pypy-2.2.1

注意事项:

如果您通过 Homebrew 等安装了 pyenv,那应该是开箱即用的(对我来说确实如此)。如果没有,installation instructions 详细说明一个必要的步骤:

将 pyenv init 添加到您的 shell 以启用 shims 和自动补全。请确保 eval "$(pyenv init -)" 放在 shell 配置文件的末尾,因为它在初始化期间会操纵 PATH。

他们建议的具体命令(用于 bash)是:

$ echo -e 'if command -v pyenv 1>/dev/null 2>&1; then\n eval "$(pyenv init -)"\nfi' >> ~/.bash_profile

然后重启shell。

对于链接的安装说明中列出的特定 shell,还有一些进一步的警告。希望这会有所帮助。

【讨论】:

    【解决方案2】:

    对于 MacOS,我必须设置全局版本pyenv global 3.10.1,然后设置exec $SHELL

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2010-09-11
      • 2015-06-23
      • 2015-07-10
      • 1970-01-01
      • 2012-05-09
      相关资源
      最近更新 更多