Python
pyenv

pyenvでPythonがSystemバージョンから切り替わらない時の対処

More than 3 years have passed since last update.

pyenvでPythonバージョンを切り替えたはずなのに切り替わらない時の対処方法

$ which python
/usr/bin

となるときはpyenvがインストールされている/usr/localよりPythonがデフォルトでインストールされている/usr/binの優先度が高くなっているので、

$ vim /etc/paths

/usr/bin
/bin
/usr/local/bin
/usr/sbin
/sbin
/usr/local/sbin

/usr/local/bin
/usr/bin
/bin
/usr/local/sbin
/usr/sbin
/sbin

として/usr/local/~の優先度を上げる。

$ which python
/usr/local/bin/pyenv

となってくれるはず。

それでも切り替わらない場合は、
~/.bash_profileで設定したはずの

eval "$(pyenv init -)"

が実行されていないと思われるのでターミナルで直叩きしてみよう。
なぜかターミナルを開いた時に実行されないことがある。
(すまねえshell語はさっぱりなんだ)
→(追記)~/.bash_profileでコメントされてただけでちゃんと実行されます(プログラマの屑が!)