「Pythonで作成したプログラム起動時、自動的に Pythonのバージョンを を切り替えるには」の版間の差分

提供: tknotebook
移動: 案内検索
(仮想環境)
(仮想環境)
59行: 59行:
 
==仮想環境==
 
==仮想環境==
  
仮想環境を activate しているときは、pythonコマンドや pip コマンドをそのまま使いましょう。
+
複数バージョンのpythonがインストールされている場合、pythonバージョンを指定して仮想環境を作るには
 +
 
 +
py -3.5 -m venv ・・・(venvのパラメータ)
 +
 
 +
というようにします。
 +
 
 +
仮想環境を activate しているときは、Python Launcher は、仮想環境のScriptsフォルダの python.exe を起動します。
 +
但し py でバージョンを明示的に指定すると、仮想環境ではなく インストール先の python.exe を起動するので、仮想環境のパッケージは見えません。
 +
 
 +
注意してください。

2018年11月18日 (日) 05:06時点における版

メインページ>コンピュータの部屋#Python>Python Tips

この記事では複数のバージョンのPythonを使い分ける方法を紹介します。尚、内容は Windows 限定、他の環境では未確認です。


Python Launcher

Python3 インストール時、特に指定しなければ c:\Windows に py.exe/pyw.exe というコマンドがインストールされます。Python Launcher と呼ばれるものです。

複数のバージョンのPythonを使い分ける場合、pythonコマンドにパスを通して使うのは素人、この Python Launcher を使いましょう。コマンドラインで

prime.py

と打ったり、explorerで prime.py をダブルクリックした時に起動されるのも この Python Launcher です。これはコマンドラインで

py prime.py

と打つことと同じ意味になり、最後にインストールした python が起動します。

Python Launcher は Pythonスクリプトファイルのシェバン行を読んで、起動する Python インタープリターを切り替える機能があります。

Python ファイルのシェバン行は以下のようにします


Python2 を使う場合

#!Python2


Python3 を使う場合

#!Python3


より細かく Pythonのバージョンまで指定するときは

#!Python3.5

というようにマイナーバージョンまで指定してください。

py prime.py

というようにプログラムを起動すれば、お望みのバージョンの python でプログラムを実行できます。 シャバン行を書かなければ最後にインストールした pythonが起動します。

Pythonバージョンの直接指定(オーバライド)

シェバン行の無いpythonスクリプトをお望みのpythonバージョンで動かしたい場合や、シェバン行を無視してお望みのpythonバージョンを使いたい場合は 以下の様に python Launcher に引数でpythonのバージョンを指定します。

py -3.6 prime.py

Pythonバージョンを指定して pip を使う

複数バージョンのpythonがインストールされている場合で、最後にインストールしたpythonにパスを通している場合, pipコマンドは最後にインストールしたpythonのバージョンしかメンテしてくれません。

任意のpythonバージョンの管理を行い場合は

py -3.5 -m pip ・・・・・(pipのコマンドパラメータ)

というように pip を起動します。


仮想環境

複数バージョンのpythonがインストールされている場合、pythonバージョンを指定して仮想環境を作るには

py -3.5 -m venv ・・・(venvのパラメータ)

というようにします。

仮想環境を activate しているときは、Python Launcher は、仮想環境のScriptsフォルダの python.exe を起動します。 但し py でバージョンを明示的に指定すると、仮想環境ではなく インストール先の python.exe を起動するので、仮想環境のパッケージは見えません。

注意してください。