HOWTO · Python
macOS で Python をアンインストールする
インストール方法ごとに macOS で Python をアンインストールする方法を学びます。Homebrew または pyenv のバージョンを削除し、python.org のインストールを完全に削除し、残されたファイルをクリーンアップします。
このページの内容
macOS で Python をアンインストールする方法は、インストール方法によって異なります。そのため、最初のステップは常に、自分がどのインストールを持っているかを突き止めることです。この記事では、Homebrew、python.org インストーラー、pyenv という 3 つの一般的なケースを取り上げ、macOS 自体に付属する Python をそのままにしなければならない理由を説明し、最後にクリーンアップする価値のある残りのファイルを取り上げます。
始める前に、ターミナルで which -a python3 を実行してください。表示されるパスによって、どのセクションが自分に当てはまるかが分かります。/opt/homebrew または /usr/local/Cellar のパスは Homebrew に属し、/Library/Frameworks/Python.framework は python.org インストーラーに属し、~/.pyenv 以下のパスは pyenv に属します。
macOS 上の Python を理解する
Mac には複数の Python インストールを同時に保持でき、それらが互いに干渉することはありません。Apple は独自の開発ツール用に python3 コマンドを macOS に同梱しており、Homebrew、python.org インストーラー、pyenv を通じて自分でインストールしたものはすべて、それとは別に並んで存在します。
このため、「Python をアンインストールする」とは、ほとんどの場合、Python 全体ではなく、自分でインストールしたコピーの 1 つを削除することを意味します。他のツールが依存しているコピーを削除すると、それらが壊れる可能性があります。そのため、何かを削除する前に、which -a python3 のパスを使って、実際に削除したいインストールを特定してください。
Homebrew でインストールした Python をアンインストールする
Homebrew で Python をインストールした場合は、Homebrew に削除させることで、フォーミュラのファイルとリンクが一貫して整理されます。まず、Homebrew がインストールした Python フォーミュラを一覧表示します。
brew list | grep python
不要になったバージョンを、バージョン付きフォーミュラ名で指定してアンインストールします。
brew uninstall python@3.12
3.12 を自分のリストにあるバージョンに置き換えてください。Homebrew は、他のインストール済みフォーミュラが依存しているフォーミュラのアンインストールを拒否します。その場合は、まずそれらの依存側をアンインストールするか、何もそれを必要としていないことが確実な場合は --ignore-dependencies を付けてコマンドを繰り返してください。
その後、削除を確認します。フォーミュラが brew list | grep python に表示されなくなり、which -a python3 が Homebrew のパスを表示しなくなります。python3 --version が依然として応答する場合は、残っているインストールの 1 つであり、最も多いのは後述する macOS のものです。
python.org からインストールした Python をアンインストールする
python.org インストーラーには独自のアンインストーラーがありません。Python のドキュメントが説明しているように、インストーラーは Mac に 3 つのものを配置します。/Applications の Python 3.x フォルダー、/Library/Frameworks/Python.framework のフレームワーク、そして /usr/local/bin の実行ファイルへのシンボリックリンクです。アンインストールするには、これら 3 つを削除します。
一度に 1 つのバージョンを削除します。まず、フレームワーク内に存在するバージョンを一覧表示します。
ls /Library/Frameworks/Python.framework/Versions/
削除するバージョン(ここでは 3.12)とその Applications フォルダーを削除します。
sudo rm -rf /Library/Frameworks/Python.framework/Versions/3.12
sudo rm -rf "/Applications/Python 3.12"
次に、削除したバージョンを指すシンボリックリンクだけを削除します。まず一覧表示します。
ls -l /usr/local/bin | grep "Python.framework/Versions/3.12"
コマンドが表示する各リンクを削除します(例: sudo rm /usr/local/bin/python3.12)。他のバージョンや Homebrew を指すリンクには触れないでください。フレームワーク内の最後のバージョンを削除した場合は、/Library/Frameworks/Python.framework 自体を削除できます。インストーラーはまた、フレームワークの bin ディレクトリを ~/.zprofile または ~/.bash_profile でシェルの PATH に追加します。その行も削除してください。
pyenv でインストールした Python をアンインストールする
pyenv はインストールするすべてのバージョンを ~/.pyenv/versions の下に保持するため、1 つを削除しても他の Python に影響することはありません。インストールされているバージョンを一覧表示します。
pyenv versions
不要になったバージョンをアンインストールします。
pyenv uninstall 3.12.4
pyenv は確認を求めた後、そのバージョンのディレクトリを削除します。pyenv versions を再度実行してバージョンが消えたことを確認してください。それがグローバルバージョンだった場合は、pyenv global で新しいものを設定してください。そうしないとシェルは別のインストールにフォールバックします。
macOS に付属するシステム Python
macOS 自体は、Xcode Command Line Tools やその他の Apple ソフトウェア用に /usr/bin/python3 の python3 コマンドを提供しています。Python のドキュメントはこのコピーについて明確です。これは Apple が管理し、Apple 提供のソフトウェアとサードパーティのソフトウェアが使用するものであり、決して変更したり削除しようとしたりしてはなりません。また、シールドされたシステムボリューム上にあるため、通常の方法では削除できません。
したがって、このセクションでアンインストールするものは何もありません。自分のインストールを削除した後も python3 --version がバージョンを報告する場合は、which python3 でパスを確認してください。/usr/bin/python3 と表示される場合、その残りのコピーはシステムのものであり、そのままにしておくのが正しい最終状態です。
残りのファイルをクリーンアップする
インストーラーとパッケージマネージャーは小さな残りを残すことがあります。削除する価値があるのは、アンインストールしたバージョンのユーザーごとのライブラリディレクトリと、pip のダウンロードキャッシュです。
rm -rf ~/Library/Python/3.12
rm -rf ~/Library/Caches/pip
バージョン番号を削除したものに合わせ、そのバージョンに属するディレクトリだけを削除してください。異なるバージョン番号の別のインストールは、独自のディレクトリを保持し、影響を受けません。削除した Python で作成した仮想環境は動作しなくなります。それらのプロジェクトフォルダーも削除するか、残っている Python で再作成してください。
結論
macOS で Python をアンインストールするのはインストールごとの作業です。Homebrew のバージョンは brew uninstall で、python.org のインストールはフレームワークのバージョン、Applications フォルダー、およびその /usr/local/bin シンボリックリンクを削除することで、pyenv のバージョンは pyenv uninstall で削除します。macOS のシステム Python が対象になることは決してありません。which -a python3 で各コピーを特定し、意図したものだけを削除し、その残りだけをクリーンアップしてください。
FAQ
-
macOS にインストールされている Python のバージョンを確認するにはどうすればよいですか?
which -a python3を実行して PATH 上のすべてのpython3を確認し、brew list | grep pythonとpyenv versionsで各マネージャーを個別に確認します。 -
システムバージョンの Python をアンインストールしても安全ですか?
いいえ — その必要もありません。/usr/bin/python3のコピーは macOS とその開発ツールに属しており、Python のドキュメントには、決して変更や削除をしてはならないと書かれています。 -
アンインストールした後に Python を再インストールするにはどうすればよいですか?
以前と同じ方法でインストールします。Homebrew ならbrew install python、python.org のインストーラー、pyenv ならpyenv installの後にバージョン番号を指定します。 -
アンインストールコマンドがエラーを報告した場合はどうすればよいですか?
どのプログラムがそれを表示したかを確認してください。Homebrew は、別のフォーミュラが削除中の Python に依存している場合に拒否します。python.org ファイルに対する権限エラーは、sudoのステップが省略されたことを意味します。バージョン名が見つからない場合は、別のマネージャーによってインストールされたことを意味します。 -
複数のバージョンの Python を同時にインストールできますか?
はい。Homebrew、python.org、pyenv のインストールは共存し、pyenv はまさに複数のバージョンを切り替えるために存在します。