web-dev-qa-db-ja.com

Windows 7でpython 2および3を実行するにはどうすればよいですか?

python 3をpython 2の上に何も台無しにしないでインストールする方法はありますか?主な問題は、「python xxxxx .py abc123 "。python 3を" python3 xxxx.py abc123 "に変更する方法はありますか?同じコマンドpythonが競合です

41
SwimBikeRun

WindowsでのPython 2とPython 3の共存/起動のより良い方法があります。 Python 3.3はWindows用Pythonランチャーを導入しました( http://www.python.org/dev/peps/pep-0397/ を参照)。

Python 3.3のインストール後、py.exeおよびpyw.exec:\Windowsディレクトリーにコピーされ、ランチャーを使用するように.py拡張に関連付けが設定されます。デフォルトでは、py script.pyに対してPython 2が起動されます。 py -3 script.pyはPython 3を起動します(これは、Pythonのパスを環境に追加する必要がないことを意味します-C:\Windowsは既にPATHにあります。)

最も良いのは、スクリプト内の#!python2がPython 2を介して起動し、#!python3がPython 3を介してスクリプトを起動することです。これにより、Pythonの両方のバージョンのスクリプトを使用できます。それらを統一された方法で-py script.pyまたはスクリプトアイコンをクリックするだけで起動します。

詳細はありますが、これは基本的に必要なものです。

更新:WindowsのPythonランチャーを使用する場合、cmdウィンドウからPythonスクリプトを起動することもできます。 > script.pyと入力する(つまり、py-- Pythonランチャーの名前をスクリプト名の前に明示的に入力しない)、または.py拡張子なしの名前を入力することでも(つまり、> script) 。

このように、物事はスクリプトを命名するUnixの方法に似るようになります(拡張機能は必要ありません)。ただし、スクリプトファイルを作成するときには、.py拡張子を追加する必要があります。

(はい、Unixのアプローチよりも少し厄介です。これは"Think first!""Sell first!"の開発アプローチの違いです。とにかく、WindowsのPythonランチャーをリリースすることにより、Python開発チームにWindowsの最高の機能を提供することを称賛します。)

92
pepr

それがあなたのニーズを満たすかどうかはわかりませんが、virtualenvを見てください: http://www.virtualenv.org/en/latest/

これにより、Python 2と3(-pフラグを使用)の個別の環境を作成できます。ユースケースがこれでうまくいかない場合は、質問をより詳細に更新してください。そして、私はあなたが他の提案を得ると確信しています。

6
Shaun

Python3を別のディレクトリにインストールする場合、python 3実行可能ファイルの名前をpython3.exeに変更することもできます。

2
MichaelJCox

環境変数を編集して、Python 3またはPython 2パス。

0
FA5er