使用pyenv 2.0.3
当我在一个有python版本文件的文件夹中时,python会一直使用2.7.6的系统版本。(不确定为什么是2.7.6,因为我通过brew安装了3.9.7(。
$ python -V
Python 2.7.16
通过pyenv查看可获得
$ pyenv which python
/Users/jaco/.pyenv/versions/trading/bin/python
激活它已经表明它被激活了。
我有
# pyenv
export PYENV_ROOT="$HOME/.pyenv"
export PATH="$PYENV_ROOT/bin:$PATH"
eval "$(pyenv init -)"
eval "$(pyenv virtualenv-init -)"
在我的zshrc 中
似乎也没有pyenv的bin文件夹?这是v2上的新产品吗?
$ l /Users/jaco/.pyenv/bin
ls: /Users/jaco/.pyenv/bin: No such file or directory
同样设置pyenv global 3.9.1
不起作用,它保持2.7
答案是将垫片放在路径上
# pyenv
export PYENV_ROOT="$HOME/.pyenv"
export PATH="$PYENV_ROOT/shims:$PATH"
if which pyenv-virtualenv-init > /dev/null; then eval "$(pyenv virtualenv-init -)"; fi
#if which pyenv > /dev/null; then eval "$(pyenv init -)"; fi
假设您正在运行MacOS并通过Homebrew安装了pyenv
,则需要执行以下操作:
# Adjust the session-wide environment for your account.
echo 'eval "$(pyenv init --path)"' >> ~/.zprofile
# Enable autocompletion and all subcommands
echo 'eval "$(pyenv init -)"' >> ~/.zshrc
来自pyenv安装文档:
MacOS注意:如果使用Homebrew安装Pyenv,则不需要添加Pyenv_ROOT=和PATH=行。如果你的shell不使用命令,你也不需要在~/.profile中添加命令。
我键入pyenv versions
,它显示:
system
2.7.18
* 3.10.0 (set by PYENV_VERSION environment variable)
3.8.13
然后我简单地运行unset PYENV_VERSION
,当我再次运行pyenv versions
时,它正确地选择了我想要的本地版本(2.7.18(
我在我的~
文件夹上,试图运行pyenv global 3.10.4
但python -V
只运行3.8.3
尝试了一切,陷入绝望。
问题是在我的~
上有一个指向3.8.3
的.python-version
文件。
解决方案:检查并移除.python-version