【Mac環境版】Pythonをpyenvでインストール&環境構築する方法

MacOSXにPythonをpyenvでインストール&環境構築する方法について詳しく解説します。

「macOS標準のPython」を使わない方が良い理由

macOSには「(/usr/bin/python3」に最初からPythonがインストールされています(以下、「macOS標準のPython」という)。
しかし、「macOS標準のPython」は以下の理由からプログラミングには使用しないことが良いとされています。

理由 説明
バージョンが古い 「macOS標準のPython」はシステムメンテナンス用のスクリプトなどに使用されています。「macOS標準のPython」のアップグレード等をするとmacOSの内部動作が正常に動かなくなる恐れがあります。
パッケージの更新やインストールに管理者権限(sudo)が必要 macOSには、SIP(System Integrity Protection) という仕組みがあり、 「/usr/bin」などのディレクトリは 書き換え禁止 になっています。簡単にいうと、Apple は「ここにあるものは重要だから安易に触るな」と明示しています。

よって、「macOS標準のPython」は使わず、別途Pythonをインストールして使う方法が望ましいです。

「macOS標準のPython」の状態を確認

ターミナルを開き、以下のコマンドを実行します。

python3 --version
which python3
  • /usr/bin/python3 と出る → macOS 標準の Python を使っている状態
  • /opt/homebrew/bin/python3 など → Homebrew 版が入っている可能性あり

あとで「どれがどの Python?」で迷わないように、出力結果をメモしておきましょう。

Homebrewのインストール

Homebrewをインストールしていない場合、以下ページを参考に導入してください。

【Mac】homebrewをインストールする方法
homebrew(読み方:ホームブルー)をMacにインストールする方法についてまとめました。

「pyenv」のインストール

pyenv とは、「Python のバージョン管理ツール」です。1台の Mac に 複数の Python を共存 させて、プロジェクトごとに使うバージョンを切り替えられる ようにするものです。今回は、「macOS標準のPython」と「ユーザー用のPython」を効率的に共存させるために使用します。

① ターミナル上で以下のコマンドを実行し、pyenvをインストールします。

brew update
brew install pyenv

② 以下のコマンドを実行し、「pyenv 2.3.36」などと表示されたらインストール成功です。

pyenv -v
# 例: 

③ シェル設定(~/.zshrc )に以下の内容を追記します(zsh 前提)。

export PYENV_ROOT="$HOME/.pyenv"
export PATH="$PYENV_ROOT/bin:$PATH"
eval "$(pyenv init -)"

④ 設定を反映させます。

source ~/.zshrc

「Python」 をインストール

① ターミナル上で以下のコマンドを実行し、pyenv が入れられる Python の一覧を確認します。

pyenv install --list

② ずらっと出てくるので、その中から使いたい安定版(例: 3.12.53.13.x)を選びます。例えば、以下のコマンドを実行すると、 3.12.5 をインストールします。

pyenv install 3.12.5

③ 以下のコマンドを実行し、インストールされた Python を確認します。

pyenv versions
# 例:
#   system
#   3.11.10
# * 3.12.5 (set by …)

デフォルトPythonの変更

以下のコマンドを実行すると、先程インストールしたバージョンのPythonをデフォルトに変更できます。

pyenv global 3.12.5

以下のコマンドを実行し、 Python 3.12.5 とインストールしたPythonのバージョンになっていれば成功です。

python --version
python3 --version

ちなみに、変更したのは「ユーザーが使うデフォルトPython」のみです。そのため、macOSの内部処理には影響しません。

  • ユーザーが使う Python → ~/.pyenv/versions/3.12.5/bin/python
  • macOS が使う Python → /usr/bin/python3(SIP で保護されている)

プロジェクト単位でPythonのバージョンを変更(上級者向け)

プロジェクトごとにバージョンを変えたい場合、以下コマンドを実行します。

cd ~/projects/myapp
pyenv local 3.12.5

すると、ディレクトリに .python-version というファイルができて、ここだけ Python バージョンが固定されます。

仮想環境(venv)でライブラリも分ける(上級者向け)

バージョンだけでなく、ライブラリもプロジェクトごとに分けることができます。
以下のコマンドを実行し、 仮想環境を作成します。

cd ~/projects/myapp
python -m venv .venv

以下のコマンドを実行し、 仮想環境を有効化します。

# 有効化
source .venv/bin/activate

以下のコマンドを実行し、バージョン・パスを確認します。

python --version
which python

仮想環境を有効にした状態で pip install すると、そのプロジェクト専用にライブラリが入ります。
仮想環境を無効化する場合は、以下のコマンドを実行しします。

deactivate

関連コンテンツ

Python超入門速報
【Mac入門】基本設定、使い方、カスタマイズ術
macOSの基本設定、使い方、カスタマイズ術について解説します。

コメント