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

提供: tknotebook
移動: 案内、 検索
(→‎Python Install Manager)
(→‎Python Install Manager)
21行: 21行:
  
  
 +
PIM は以下のように
 +
py <pythonファイル名>
 +
と打つことで任意のpythonスクリプトを実行できます。既定ではインストールされている最新の python でスクリプトを実行します。
  
−
Python Launcher は Pythonスクリプトファイルのシェ
+
== シェバン行 ==
  
−
バン行を読んで、起動する Python インタープリターを切り替える機能があります。
+
PIM には Pythonスクリプトファイルのシェバン行を読んで、起動する Python インタープリターを切り替える機能があります。
  
 
Python ファイルのシェバン行は以下のようにします
 
Python ファイルのシェバン行は以下のようにします
39行: 42行:
  
 
より細かく Pythonのバージョンまで指定するときは
 
より細かく Pythonのバージョンまで指定するときは
−
  #!python3.5
+
  #!python3.13
  
 
というようにマイナーバージョンまで指定してください。
 
というようにマイナーバージョンまで指定してください。

2026年10月7日 (水) 08:50時点における版

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

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

2026.10.7 追記 内容は Python Intall Manager 版に限定することにしました。 旧来の python インストーラのインストールした python では異なるかもしれません、あしからず。

尚、旧来の python インストーラは python 3.16 からは提供されないので早めに乗り換えることをおすすめします。


Python Install Manager

Python Install Manager をインストールすると、 py.exe というコマンドが

~/AppData/Local/Microsoft/WindowsApps

インストールされます。

Powershell のコマンドラインで、単に py と打鍵すると、インストールされている最新の python が起動されます。

以下 Python Install Manager は PIM と呼称します。


PIM は以下のように

py <pythonファイル名>

と打つことで任意のpythonスクリプトを実行できます。既定ではインストールされている最新の python でスクリプトを実行します。

シェバン行

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

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


Python2 を使う場合

#!python2


Python3 を使う場合

#!python3


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

#!python3.13

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

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 を起動します。 但し スクリプトのシェバン行で pythonバージョンを指定したり、pyコマンドのオプションでバージョンを明示的に指定したりすると、 仮想環境ではなく インストール先の python.exe を起動してしまいます。これでは仮想環境にインストールしたパッケージが見えません。

仮想環境を使うときは、pythonのバ-ジョンの指定は仮想環境に任せ、シェバン行や py コマンドでのpythonバージョンの指定などは行わないでください。