pyenv似乎在终端重启后恢复到较老的Python版本
我正在使用macOS Sierra。我有使用pyenv的问题。 我想用pyenv。所以我添加了关于pyenv的路径。pyenv似乎在终端重启后恢复到较老的Python版本
$是shell。
$ vi ~/.bash_profile
[.bash_profile中]
export PYENV_ROOT=/usr/local/var/pyenv
if which pyenv > /dev/null; then eval "$(pyenv init -)"; fi
if which pyenv-virtualenv-init > /dev/null; then eval "$(pyenv virtualenv-init -)"; fi
和
$ source ~/.bash_profile
和
$ pyenv install 3.6.2
$ pyenv global 3.6.2
$ python -V
(Console Output) Python 3.6.2
我重新启动终端。
$ python -V
(Console Output) Python 2.7.10
我再次输入,pyenv global 3.6.2
的外壳,但
$ python -V
(Console Output) Python 2.7.10
[更新〜/ .bash_profile中]
Sangwon-Hong-MacBook-Pro:~ Frodo$ source ~/.bash_profile
Sangwon-Hong-MacBook-Pro:~ Frodo$ python -V
Python 3.6.2
Sangwon-Hong-MacBook-Pro:~ Frodo$ echo $PATH
/Users/Frodo/64bit-Multicore-OS/cross/bin:/usr/local/Cellar/ruby/2.4.1_1/bin:/usr/local/bin:/usr/local/Cellar/pyenv-virtualenv/1.1.0/shims:/usr/local/var/pyenv/shims:/opt/local/bin:opt/local/sbin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/Users/Frodo/.rvm/bin
[重启]:PATH不更新。
Sangwon-Hong-MacBook-Pro:~ Frodo$ python -V
Python 2.7.10
Sangwon-Hong-MacBook-Pro:~ Frodo$ echo $PATH
/opt/local/bin:opt/local/sbin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/Users/Frodo/.rvm/bin
什么问题?
我会建议使用pyenv + virtualenv,非常好的组合。
-
在MacOS海伊谢拉安装pyenv
brew update brew install pyenv brew install pyenv-virtualenv
-
需要安装Python版本:
export CFLAGS="-I$(brew --prefix openssl)/include" export LDFLAGS="-L$(brew --prefix openssl)/lib" pyenv install 3.6.3; pyenv install 2.7.14
-
添加到bashprofile
###PYENV export PYENV_ROOT=/usr/local/opt/pyenv eval "$(pyenv init -)" if which pyenv-virtualenv-init > /dev/null; then eval "$(pyenv virtualenv-init -)"; fi alias pyt='pyenv activate' alias pys='pyenv shell' alias pyd='pyenv deactivate' alias pyu='pyenv uninstall' #delete virtualenv alias pyv='pyenv virtualenv' #create virtualenv alias pyls='pyenv virtualenvs' #list virtualenvs export PYENV_VIRTUALENV_DISABLE_PROMPT=1 #disable deprecated future
你可以直接命令,而不是别名。
最佳, 伊万
我不太清楚是什么在您的文章是输入,什么是控制台输出。我*认为*我已修复它,但有另一种看法来确保。 –
这个'.bash_profile'在哪里?它在你的主目录(即'〜/ .bash_profile') – donkopotamus
是的,它在我的主目录(/ Users/Frodo /)中。 我发现问题。 当我输入source〜/ .bash_profile和echo $ PATH时,它会更新关于pyev路径。 但是,当我重新启动终端和echo $ PATH时,关于pyenv的路径不包含在$ PATH中。我不知道为什么... – Frodo