ものづくりのブログ

うちのネコを題材にしたものづくりができたらいいなと思っていろいろ奮闘してます。

【python】Run `pyenv init` to see the necessary changes to make to your configuration.

pyenv のバージョンを上げたら、pyenv の調子がおかしくなった。
(pyenv の表示と実際の python のバージョンが異なる)

症状

pyenv でバージョンを確認すると、3.9.4 を使用していることになっているけど...

$ pyenv versions
  system
  2.7.16
* 3.9.4 (set by /Users/xxxxx/.pyenv/version)

実際に python のバージョンを確認してみると 2.7.16 と表示される。

$ python -V
Python 2.7.16

シェルを起動時すると以下のようなメッセージが表示される。

. ~/.zshrc 
WARNING: `pyenv init -` no longer sets PATH.
Run `pyenv init` to see the necessary changes to make to your configuration.

原因

調べてみたら以下のようなものが...
github.com

回避方法

Warning 解決方法

「.zshrc」に下記を追加する。

export PYENV_ROOT="$HOME/.pyenv"
export PATH="$PYENV_ROOT/bin:$PATH"
if command -v pyenv 1>/dev/null 2>&1; then
  eval "$(pyenv init --path)"
fi

動作確認

回避方法を設定後に python のバージョンを確認してみたら問題が解決していました。

$ pyenv versions
  system
  2.7.16
* 3.9.4 (set by /Users/xxxxx/.pyenv/version)
$ . ~/.zshrc
$ python -V
Python 3.9.4