234

私はほとんどのプログラミングをWindows7のPython3.xで行っていますが、Python Imaging Library(PIL)、ImageMagick、およびwxPythonを使用する必要があります。これらはすべてPython2.xを必要とします。

Python2.xとPython3.xの両方をWindows7にインストールできますか?スクリプトを実行するとき、どのバージョンのPythonでスクリプトを実行するかをどのように「選択」しますか?前述のプログラムは、一度にインストールされたPythonの複数のバージョンを処理できますか?私はこれを無駄にする方法を何時間も探してきました。

ありがとう。

4

19 に答える 19

151

これを行う正式な方法は次のとおりです。

Windows 7 に Python の 2 つ (またはそれらのインストーラーを使用) のバージョンをインストールするだけです (私にとっては 3.3 と 2.7 で動作します)。

以下の手順に従って、必要に応じてパラメータを変更してください。

次の環境変数を作成します (ダブルクリックでデフォルトに設定)。

Name:  PY_PYTHON
Value: 3

特定のインタープリターでスクリプトを起動するには、次のシバン (スクリプトの先頭) を追加します。

#! python2

特定のインタープリターを使用してスクリプトを実行するには、次のプロンプト コマンドを使用します。

> py -2 MyScript.py

特定のインタープリターを起動するには:

> py -2

デフォルトのインタープリター (PY_PYTHON 変数で定義) を起動するには:

> py

資力

ドキュメント: Windows での Python の使用

PEP 397 - Windows 用の Python ランチャー

于 2013-08-12T21:48:53.267 に答える
81

私がしたことは、2.7.6 と 3.3.4 の両方をダウンロードすることでした。Python 3.3.4 には、環境変数にパスを追加するオプションがあるため、これが行われました。基本的に、Python 2.7.6 を手動で追加しました。

方法...

  1. [スタート] > 環境の検索タイプで [環境変数をアカウントに編集] を選択します1

  2. [パス] まで下にスクロールし、パスを選択して、[編集] をクリックします。

  3. C:\Python27; を追加します。したがって、そこに両方の​​バージョンの Python へのパスが必要ですが、そうでない場合は、簡単に編集して実行できます..... C:\Python27;C:\Python33;

  4. C:\ の Python27 フォルダーに移動し、python.exe のコピーの名前を python2.exe に変更します。

  5. C:\ の Python34 フォルダーに移動し、python.exe のコピーの名前を python3.exe に変更します。

  6. テスト: コマンド プロンプトを開き、python2 ....BOOM! と入力します。パイソン 2.7.6。出る。

  7. テスト: コマンド プロンプトを開き、python3 ....BOOM! と入力します。パイソン 3.4.3。出る。

注: (手順 4 と 5 で pip コマンドを壊さないように、名前を変更したファイルと同じディレクトリに python.exe のコピーを保持します)

于 2014-03-25T06:13:36.860 に答える
54

I have multiple versions in windows. I just change the exe name of the version I'm not defaulting to.

python.exe --> python26.exe

pythonw.exe --> pythonw26.exe

As for package installers, most exe installers allow you to choose the python install to add the package too. For manual installation check out the --prefix option to define where the package should be installed:

http://docs.python.org/install/index.html#alternate-installation-windows-the-prefix-scheme

于 2010-09-28T03:07:40.200 に答える
30

Anaconda Python を使えば、さまざまな環境を簡単に導入できます。

Anaconda Python 2.7 がインストールされていて、Python 3.4 環境が必要だとします。

conda create -n py34 python=3.4 anaconda

次に、環境をアクティブにします。

activate py34

そして無効にするには:

deactivate py34

(Linux では、 を使用する必要がありますsource activate py34。)

リンク:

アナコンダ Python をダウンロード

環境に関する指示

于 2014-10-16T12:54:34.643 に答える
9

できることは次のとおりです。

cmderをインストールします。cmd ターミナルと同じように、Cmder を開いて使用します。コマンド エイリアスを使用して、コマンド エイリアスを作成します。

私は次のことをしました:

alias python2 = c:\python27\python.exe
alias python3 = c:\python34\python.exe

以上です!;-)

于 2015-05-26T17:42:12.067 に答える
8

バージョン 3.3 以降の Windows バージョンには Python ランチャーが含まれています。セクション 3.4 を参照してください。Windows 用の Python ランチャー

于 2013-08-26T12:11:13.233 に答える
7

私は実際に興味深い解決策を考えました。Windows では簡単にプログラムのエイリアスを作成することはできませんが、代わりに、現在のプログラムを呼び出す名前を変更したバッチ ファイルを作成できます。

実行可能ファイルの名前を変更すると、pip を含む多くのものが壊れる代わりに、python2.exe と同じディレクトリに python2.bat ファイルを作成します。次に、次の行を追加します。

%~dp0python %*

この古風な構文は何を意味するのでしょうか? これはバッチ スクリプトです (Windows 版の bash)。%~dp0 は現在のディレクトリを取得し、 %* はスクリプトに渡されたすべての引数を python に渡すだけです。

python3.bat について繰り返します

pip やその他のユーティリティについても同じことができます。ファイル内の単語 python を pip またはファイル名に置き換えるだけです。エイリアスは、ファイルの名前です。

何よりも、PATH に追加すると、Windows は拡張子を無視するので実行されます。

python3

python3 バージョンを起動し、コマンド python2 で python2 バージョンを起動します。

ところで、これは Spyder が Windows 上のパスに自分自身を追加するために使用するのと同じ手法です。:)

于 2016-02-19T21:37:54.887 に答える
3

1 台のマシンに複数のバージョンの Python をインストールできます。セットアップ中に、そのうちの 1 つを Python ファイル拡張子に関連付けることができます。モジュールをインストールすると、バージョンごとに異なるセットアップ パッケージが存在するか、対象とするバージョンを選択できます。通常、それらはインタープリター バージョンの site-packages ディレクトリにインストールされるため、競合は発生しないはずです (ただし、これはテストしていません)。Python のバージョンを選択するには、インタープリターへのパスを手動で指定する必要があります (それがデフォルトのものでない場合)。私の知る限り、それらは同じ PATH および PYTHONPATH 変数を共有するため、問題になる可能性があります。

注: Windows XP を実行しています。これが他のバージョンで変更されるかどうかはわかりませんが、そうなる理由はわかりません。

于 2010-09-28T02:46:02.480 に答える
3

Python 2.7 と Python 3.4 がインストールされている自分の Windows コンピューターで行ったことは、Python.exe ファイルと同じディレクトリに単純な .bat ファイルを作成したことです。彼らは次のように見えます。

cmd /k "c:\python27\python.exe" %*

%* を使用すると、後で引数 (Python ファイル) を追加できます。/k は、スクリプトの実行が終了した後もプロンプトを開いたままにすると思います。次に、それを python27.bat として保存します。次に、Python 3 ディレクトリに移動し、そこにバット ファイルを作成します。今私のコマンドラインで私は書くことができます

Python27 helloworld.py

または

Python34 helloworld.py

そして、それぞれのバージョンの Python で実行されます。c:\python27c:\python34が環境変数にあることを確認してください。

私はここから答えを得ました

于 2016-07-06T09:45:54.763 に答える
1

私は自分でその問題に遭遇し、起動したいバージョンを選択できるようにランチャーを .bat で作成しました。

唯一の問題は、.py が python フォルダーにある必要があることですが、コードは次のとおりです。

Python2 の場合

@echo off
title Python2 Launcher by KinDa
cls
echo Type the exact version of Python you use (eg. 23, 24, 25, 26)
set/p version=
cls
echo Type the file you want to launch without .py (eg. hello world, calculator)
set/p launch=
path = %PATH%;C:\Python%version%
cd C:\Python%version%
python %launch%.py
pause

Python3 の場合

@echo off
title Python3 Launcher by KinDa
cls
echo Type the exact version of Python you use (eg. 31, 32, 33, 34)
set/p version=
cls
echo Type the file you want to launch without .py (eg. hello world, calculator)
set/p launch=
cls
set path = %PATH%:C:\Python%version%
cd C:\Python%version%
python %launch%.py
pause

それらを .bat として保存し、中の指示に従います。

于 2014-08-01T16:08:47.333 に答える
1

Python をインストールした後、システム環境変数を確認してください。Python 3 のディレクトリが PATH 変数の最初にあり、次に python 2 である必要があります。

どちらのパス変数が最初に一致しても、Windows が使用するものです。

いつものように、このシナリオでは py -2 は python2 を起動します。

于 2015-11-04T16:44:09.617 に答える