Python2からPython3に切り替える方法を現役エンジニアが解説【初心者向け】
初心者向けにPython2からPython3に切り替える方法について現役エンジニアが解説しています。Pythonを別のパスにインストールする方法やpyenvを使う方法があります。pyenvを使うと同一のマシン上で複数バージョンのPythonを切り替えながら扱えます。
テックアカデミーマガジンは受講者数No.1のプログラミングスクール「テックアカデミー」が運営。初心者向けにプロが解説した記事を公開中。現役エンジニアの方はこちらをご覧ください。 ※ アンケートモニター提供元:GMOリサーチ株式会社 調査期間:2021年8月12日~8月16日 調査対象:2020年8月以降にプログラミングスクールを受講した18~80歳の男女1,000名 調査手法:インターネット調査
Python2からPython3に切り替える方法について解説します。
そもそもPythonについてよく分からないという方は、Pythonとは何なのか解説した記事を読むとさらに理解が深まります。
なお本記事は、TechAcademyのオンラインブートキャンプPython講座の内容をもとに紹介しています。
今回は、Pythonに関する内容だね!
どういう内容でしょうか?
Python2からPython3に切り替える方法について詳しく説明していくね!
お願いします!
現在のversion(バージョン)を確認
この記事の執筆にあたり、CentOS7を利用しました。
以下の通り、デフォルトではPython 2.7.5がインストールされています。
$ python --version Python 2.7.5
利用するソフトウェアや、システム開発の都合上、Python2を残しつつ、Python3をインストールしたい場合があります。
1つの方法はPythonを別のパスにインストールすることです。(例えば /usr/bin/python がPython2、/usr/local/bin/python がPython3)
もう1つの方法がこの記事で紹介するpyenvを用いるものです。
pyenvを使うと、同一のマシン上で、複数バージョンのPythonを切り替えながら扱えます。
pyenvをインストールする
この記事ではpyenv-installerを用いてインストールします。
gitが必要なため、あらかじめインストールしておきます。
$ sudo yum install git
pyenvをインストールします。
$ curl https://pyenv.run | bash
インストール後に出力されるメッセージに従い、~/.bashrcに記述を追加します。
export PATH="/home/vagrant/.pyenv/bin:$PATH" eval "$(pyenv init -)" eval "$(pyenv virtualenv-init -)"
ログインしなおすと、pyenvを使える状態になりました。
$ pyenv pyenv 1.2.13 Usage: pyenv <command> [<args>] Some useful pyenv commands are: commands List all available pyenv commands local Set or show the local application-specific Python version global Set or show the global Python version shell Set or show the shell-specific Python version install Install a Python version using python-build uninstall Uninstall a specific Python version rehash Rehash pyenv shims (run this after installing executables) version Show the current Python version and its origin versions List all Python versions available to pyenv which Display the full path to an executable whence List all Python versions that contain the given executable See `pyenv help ' for information on a specific command. For full documentation, see: https://github.com/pyenv/pyenv#readme
pyenvでPython3をインストールする
Pythonのビルドのために必要なコンパイラ類をインストールします。
この記事では一括インストールしますが、gcc等を個別にインストールしてもかまいません。
なお、筆者の環境ではzlib-devel, libffi-devel, openssl-develも必要でした。
$ sudo yum groupinstall "Development Tools" $ sudo yum install zlib-devel libffi-devel openssl-devel
以下コマンドでバージョン候補が表示されます。
$ pyenv install -l
この記事では最新の3.7.4をインストールします。
以下コマンドを実行します。Pythonをソースコードからビルドするため、完了まで時間を要します。
$ pyenv install 3.7.4
インストールが完了すると、以下のようになりました。
$ pyenv versions * system (set by /home/vagrant/.pyenv/version) 3.7.4
Python3に切り替える
pyenvにはlocalとglobalコマンドがあります。
localはディレクトリ配下にのみ影響します。globalは環境全体に影響します。
はじめにlocalコマンドを試します。
以下のようにexampleディレクトリに移動し、localコマンドを使います。
$ cd example/ $ pyenv local 3.7.4 $ python --version Python 3.7.4
上記の通り、Pythonのバージョンが3.7.4に切り替わりました。
上位のディレクトリに移動すると、Pythonのバージョンは2.7.5のままです。
$ cd .. $ python --version Python 2.7.5
次にglobalコマンドを試します。
$ cd example/ $ pyenv global 3.7.4 $ python --version Python 3.7.4 $ cd .. $ python --version Python 3.7.4
pyenvを実行したディレクトリ、他のディレクトリの両方で、Pythonのバージョンが3.7.4になっています。
監修してくれたメンター
橋本紘希
システムインテグレータ企業勤務のシステムエンジニア。 開発実績: Javaプログラムを用いた業務用Webアプリケーションや、基幹システム用バッチアプリケーションなどの設計構築試験。 |
内容分かりやすくて良かったです!
ゆかりちゃんも分からないことがあったら質問してね!
分かりました。ありがとうございます!
TechAcademyでは、初心者でもPythonを使った人工知能(AI)や機械学習の基礎を習得できるオンラインブートキャンプPython講座を開催しています。
挫折しない学習方法を知れる説明動画や、現役エンジニアとのビデオ通話とチャットサポート、学習用カリキュラムを体験できる無料体験も実施しているので、ぜひ参加してみてください。