はじめに
Windows10にPythonをインストールする。といったときに、Pythonは1端末上に複数バージョンが混在できることをしった。複数バージョンがインストールされたPython環境で、それぞれをどのようにインストールし、どのように使えばいいのかをまとめる。なお、今回はPython3.7と2.7をインストールする。
概要
Pythonのインストール単位と環境変数
Pythonをインストールするときには、デフォルトではユーザ個別のインストールであり、C:\Users\blackcat\AppData\Local\Programs\Python\以下にインストールされる。インストール時に「Install for all users」を指定すると、C:Program filesなどの皆が利用できる場所にインストールされる。
また、環境変数を通すかどうかも選べるが、デフォルトでは通さないことになっている。環境変数を通すとコマンドプロンプトから直接python
コマンドが使えるが、これだと複数バージョンを使い分けられない。
ユーザ個別か全ユーザかは好みだが、個人的には全ユーザがいいと思う。なお、環境変数は通さない。代わりにPythonインストール時にpylauncherを併せてインストールするようにする。これによりコマンドプロンプトからPythonプログラム実行時にバージョンを指定することができる。
プログラムと実行の全体像
pylaunchaerはC:\windows\配下にインストールされるため、コマンドプロンプトでpylauncherのコマンドpy
が使える。Pythonは3.7と2.7をそれぞれ全ユーザでインストールした。微妙にインストールの場所が異なる。この状態で自分のスクリプトC:\test.pyを実行する場合を考える。
-
コマンドプロンプトから3.7を指定して実行
pylauncherにはデフォルトの目先がある。今は3.7に向いているので、py C:test.py
コマンドを打つとPython3.7で実行される。 -
コマンドプロンプトから2.7を指定して実行
この場合は、実行時に明示的にpy -2 C:test.py
とコマンドを打つ必要がある。
3.C:\test.pyをダブルクリック
この場合はwindows上で.pyプログラムがどちらのpython.exeに紐づけられているかによる。紐づけはftypeコマンドで変えられる。
- (補足)スクリプト側で制御する
裏技的だがpylauncherでの実行では、C:\test.pyの行頭に#!/usr/bin/env python2
と書くことで、実行するバージョンを制御できる。(py C:test.py
でもバージョン2.7が実行される)
インストール
インストール時の画面を貼っておく。
3.7
2.7
まとめ
とっつきにくいが、内容を理解すればそんなに難しくはない。