全般

[Python] バージョンを変更する方法(具体例あり)

今回は、Pythonのバージョンを変更する方法についてご紹介します。

Pythonにはさまざまなバージョンが存在し、開発環境やプロジェクトの要件に応じて使い分ける必要があります。

ここでは、Pythonのバージョンとは何かを簡単に整理し、主要なバージョン切り替え方法を具体例とともにご紹介します。

さらに、手法ごとの注意点やよくあるエラーへの対策もあわせて解説します。

Pythonのバージョンとは

Pythonは、時期や機能追加に応じてバージョン番号が異なるプログラミング言語です。

バージョン番号の一例として、Python 3.8、3.9、3.10などが挙げられます。

新しいバージョンほど機能が充実していたり、パフォーマンスが向上していたりします。

しかし、既存のコードやライブラリとの互換性を保つために、あえて特定のバージョンを使い続ける場合もあります。

このように、必要に応じて自由にバージョンを切り替えられるようにすることが大切です。

Pythonバージョンを切り替える主な方法

Pythonのバージョンを切り替える方法はいくつかあります。

以下では、代表的な手法を挙げて解説します。

1. pyenv を利用する

pyenvは、複数のPythonバージョンをインストール・管理・切り替えするためのツールです。

システム全体で特定のPythonバージョンを使いたい場合や、プロジェクトごとにバージョンを切り替えたい場合に有効です。

以下は、pyenvの基本的なインストールとバージョン切り替え方法の例です。

設定が正しくできていれば、次のようにバージョンを確認できます。

実行結果

Python 3.9.7

2. 仮想環境(venv/virtualenv)を利用する

仮想環境を利用すると、システム全体のバージョンを変えずに、プロジェクト単位で異なるバージョンのPythonやライブラリを管理できます。

Python標準のvenvや、virtualenvなどを使う方法があります。

以下、venvを使った例です(Python 3.8を利用):

virtualenvを利用して特定バージョンを指定する場合は、以下のようにします。

3. Anaconda / Miniconda を利用する

AnacondaMinicondaは、Python本体と多数のライブラリをまとめてインストールできるディストリビューションです。

condaコマンドを使えば、環境ごとにPythonバージョンを切り替えて利用できます。

例として、Python 3.8の環境を作成する場合は以下の通りです。

4. Linuxの update-alternatives でシステム全体を切り替える

update-alternativesを利用すると、Debian系Linuxでシステム全体のデフォルトPythonバージョンを変更できます。

ただし、OSや他のツールが依存するバージョンがあるため、誤操作によりシステムが不安定になる可能性があります。

以下に、切り替えの例を示します。

表示される候補から使用したいバージョンを選択します。

よくあるエラーと対処法

ここでは、バージョンを変更する際によく起こるエラー例をまとめます。

  • Command not found: pyenvやvirtualenvなどがインストールされていない、もしくはPATHが通っていない場合に発生することがあります。インストールの再確認やシェル設定ファイルの確認が必要です。
  • Permission denied: システム全体のPythonを切り替える際にsudo権限がない場合などに起こります。sudoを付けるか、権限の設定を見直してください。
  • 依存パッケージ不足: pyenvなどをインストールする前に、build-essentialやlibssl-devなどの開発に必要なライブラリを入れていないとエラーが出ることがあります。必要なライブラリをあらかじめインストールしてください。
  • 環境変数の設定ミス: シェルの初期化ファイルに正しく設定が行われていないと、実行時に意図しないバージョンが起動したり、コマンドが見つからないケースがあります。設定内容を再確認しましょう。

まとめ

Pythonのバージョンを柔軟に切り替えることで、開発効率や互換性を確保しやすくなります。

pyenvや仮想環境、Anacondaなど、用途に合った方法を選択することがポイントです。

システム全体の切り替えは慎重に行い、トラブルを回避しながら最適なバージョンを活用しましょう。