0
Help us understand the problem. What are the problem?

posted at

MacのPython環境構築で3系にならないときの解決方法

先日、ふとAIをやってみたいと思い立ち、Pythonの環境構築を行ったのだが、手順通りにやったはずなのに、Pythonのバージョンが変わらない。
Python2.7.16 から Python3.10.2 にしたいのに、なんでか変更されない。。。。。。

環境

PC:Mac
Version:BigSur
shell:bash
  →bashかzshでインストール方法が若干変わるみたい。私はbashだったので、ここではbashの場合の解決方法

やりたいこと

Macには初期でPythonがインストールされているが、
Python2.7.16 であるため、最新の Python3.10.2 をインストール、メインバージョンとしたい

インストール手順

インストールは以下サイトを参考に実施した
参照:Pythonの開発環境を用意しよう!(Mac)

現状

インストールを手順通りに実施した後に、適用バージョンを確認したところ、
期待値としては

$ python --version
Python 3.10.2

となって欲しいのだが、
実際には

$ python --version
Python 2.7.16

と、インストールした最新バージョンが適用されていない状態である。

解決方法

1.まずは以下コマンドを実行し、「.pyenv」ディレクトリ内を確認確認する
$ ls ~/.pyenv
plugins		shims		version		versions

※ 「.pyenv」ディレクトリは隠しファイルとなっているので、Finderで確認したい場合はShift + alt + .コマンドをFinder上で実行することで表示されるようになる

2.原因判明

「.pyenv」ディレクトリ内を確認すると、「bin」ディレクトリが存在していない。
インストール手順内で「.bash_profile」を書き換えpyenvの設定を変更したが、そのうちのコマンドで「bin」ディレクトリを指定しているコマンドがあった。

$ echo 'export PYENV_ROOT="$HOME/.pyenv"' >> ~/.bash_profile
$ echo 'export PATH="$PYENV_ROOT/bin:$PATH"' >> ~/.bash_profile    ←これ
$ echo 'eval "$(pyenv init -)"' >> ~/.bash_profile

これが原因か!
ここのパスの指定を「bin」→「shims」に変更してあげる

$ echo 'export PYENV_ROOT="$HOME/.pyenv"' >> ~/.bash_profile
$ echo 'export PATH="$PYENV_ROOT/shims:$PATH"' >> ~/.bash_profile    ←ここ
$ echo 'eval "$(pyenv init -)"' >> ~/.bash_profile
3.確認

以下コマンドで「.bash_profile」の変更を適用する
※これ重要。.bash_profileを変更した都度やる

$ source ~/.bash_profile

そしたら、再度Pythonのバージョンを確認する

python --version
Python 3.10.2

変わった!!!!!!!!

おわりに

やっぱり環境構築が一番いやだわ〜
絶対なにかしらのエラーがでて、数日格闘することになる。
今回も一度諦めて、数週間たったあとに再チャレンジしてやっと解決することができた。
思い立ったときが一番熱入ってるのに、環境構築で冷めちゃうよね。

簡単にでしたが、同じようなエラーに躓いている人たちの参考になれば幸いです。

Register as a new user and use Qiita more conveniently

  1. You can follow users and tags
  2. you can stock useful information
  3. You can make editorial suggestions for articles
What you can do with signing up
0
Help us understand the problem. What are the problem?