私はほとんどのプログラミングをWindows 7上のPython 3.xで行っていますが、今度はPython Imaging Library(PIL)、ImageMagick、およびwxPythonを使用する必要があります。いずれもPython 2.xが必要です。
Windows 7にPython 2.xとPython 3.xの両方をインストールできますか?スクリプトを実行するときに、どのバージョンのPythonを実行する必要があるのでしょうか。前述のプログラムは、一度にインストールされた複数のバージョンのPythonを処理できますか?私はこれを無駄にする方法を何時間もかけて探しました。
ありがとう。
これを行うための正式な方法は次のとおりです。
Windows 7にPythonの2つ(またはそれ以上、それらのインストーラーを使用して)バージョンをインストールするだけです(私にとっては3.3と2.7で動作します)。
以下の説明に従って、必要に応じてパラメータを変更してください。
次の環境変数を作成します(ダブルクリック時のデフォルト)。
Name: PY_PYTHON
Value: 3
特定のインタプリタでスクリプトを起動するには、次のShebang(スクリプトの先頭)を追加します。
#! python2
特定のインタプリタを使用してスクリプトを実行するには、次のプロンプトコマンドを使用します。
> py -2 MyScript.py
特定のインタプリタを起動するには
> py -2
デフォルトのインタプリタ(PY_PYTHON変数で定義)を起動するには
> py
リソース
ドキュメンテーション: WindowsでPythonを使う
PEP 397 - Windows用のPythonランチャー
私がしたのは2.7.6と3.3.4の両方をダウンロードすることでした。 Python 3.3.4では、それをパスとして環境変数に追加することができます。それで、基本的に私はPython 2.7.6を手動で追加しました。
の仕方...
環境内の検索タイプで[スタート]> [あなたのアカウントに環境変数を編集する]を選択します1
[パス]までスクロールしてパスを選択し、[編集]をクリックします。
C:\ Python27を追加してください。そのため、そこには両方のバージョンのPythonへのパスがあるはずですが、そうでない場合は、簡単に編集して次のように編集できます。C:\ Python27; C:\ Python33;
C:\のPython27フォルダに移動し、python.exeのコピーの名前をpython2.exeに変更します。
C:\のPython34フォルダに移動し、python.exeのコピーの名前をpython3.exeに変更します。
テスト:コマンドプロンプトを開き、python2 ....と入力します。 Python 2.7.6。出る。
テスト:コマンドプロンプトを開き、python3 ....と入力します。 Python 3.4.3。出る。
注:(手順4と5でpipコマンドを中断しないように、名前を変更したファイルと同じディレクトリにpython.exeのコピーを保管してください)
私は窓に複数のバージョンがあります。デフォルトではないバージョンのexe名を変更するだけです。
python.exe - > python26.exe
pythonw.exe - > pythonw26.exe
パッケージインストーラに関しては、ほとんどのexeインストーラはパッケージを追加するためにpythonインストールを選択することを可能にします。手動インストールの場合は、--prefixオプションをチェックして、パッケージのインストール先を定義します。
http://docs.python.org/install/index.html#alternate-installation-windows-the-prefix-scheme
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
を使うべきです。)
リンク集:
バージョン3.3以降、WindowsバージョンにはPythonランチャーがあります。セクション3.4をご覧ください。 Windows用Pythonランチャー
これがあなたができることです:
インストール cmder 。 cmd端末と同じようにCmderを開いて使用します。コマンドエイリアスを作成するには、コマンドエイリアスを使用します。
私は次のことをしました:
alias python2 = c:\python27\python.exe
alias python3 = c:\python34\python.exe
以上です! ;-)
私は実際にはただ面白い解決策を考えました。 Windowsではプログラムを簡単にエイリアス化することはできませんが、代わりに現在のプログラムを呼び出す名前の変更されたバッチファイルを作成することができます。
実行ファイルの名前を変更してpipを含む多くのことを壊すのではなく、python2.exeと同じディレクトリにpython2.batファイルを作成します。その後、次の行を追加してください。
%~dp0python %*
この古風な構文はどういう意味ですか?それはバッチスクリプトです(Windows版のbash)。 %〜dp0は現在のディレクトリを取得し、%*はスクリプトに渡されたすべての引数をpythonに渡します。
Python3.batについても同じ
Pipや他のユーティリティについても同じことができます。ファイル内のWord pythonをpipまたは他のファイル名に置き換えてください。別名は、ファイルが命名されたものになります。
何よりも、PATHに追加すると、Windowsはその拡張子を無視するので、実行中です。
python3
Python3バージョンを起動し、そしてpython2コマンドはpython2バージョンを起動します。
ところで、これはSpyderがWindows上のパスに自分自身を追加するために使用するのと同じ手法です。 :)
同じシステムにPythonの任意のバージョンをインストールして実行するには、以下の私のガイドに従ってください。
たとえば、Python 2.xとPython 3.xを同じWindowsシステムにインストールしたいとします。
両方のバイナリリリースを好きな場所にインストールしてください。
PATHで最初に一致した実行可能ファイルpython
を実行するだけで、起動用に選択されます。つまり、Pythonディレクトリを手動で追加します。 python
と入力すると、最初に追加したものが選択されます。連続したpythonプログラム(それらのディレクトリがPATHに置かれる順番の昇順)は以下のように選択されます。
python
の場合はpy -2python
などの場合はpy -3.「pythons」の順番に関係なく、次のことが可能です。
私の例では、私はPython 2.7.14を最初にインストールし、Python 3.5.3をインストールしました。これが私のPATH変数の始まりです。
PATH = C:¥Program Files¥Microsoft MPI¥Bin¥; C:¥Python27; C:¥Program Files¥Python_3.6¥Scripts¥; C:¥Program Files¥Python_3.6¥; C:¥ProgramData¥Oracle¥ Java\javapath; C:\ Program Files(x86)\ Common Files\Intel\Shared
...
Python 2.7が最初で、Python 3.5が2番目です。
python
コマンドを実行するとpython 2.7が起動します(Python 3.5の場合は同じコマンドでPython 3.5が起動します)。py -2
を実行するとPython 2.7が起動します(2番目のPythonはpy -2
と互換性がないPython 3.5であることが起こるからです)。 py -3
を実行するとPython 3.5が起動します(Python 3.xであるため)。py -4
のように起動します。これは、Pythonバージョン4がリリースされたときに変更される可能性があります。今私のシステム出力にpy -4
やpy -5
など:Requested Python version (4) not installed
やRequested Python version (5) not installed
など.
うまくいけば、これは十分に明確です。
1つのマシンに複数のバージョンのPythonをインストールすることができます。また、セットアップ中に、それらのうちの1つをPythonファイル拡張子に関連付けることを選択できます。モジュールをインストールする場合、バージョンごとに異なるセットアップパッケージがあります。または、どのバージョンをターゲットにするかを選択できます。それらは通常、インタプリタ版のsite-packagesディレクトリに自分自身をインストールするので、衝突はあってはいけません(しかし私はこれをテストしていません)。どのバージョンのpythonを選択するかは、インタプリタへのパスがデフォルトのものでない場合は手動で指定する必要があります。私の知る限りでは、それらは同じPATH変数とPYTHONPATH変数を共有することになり、これが問題になる可能性があります。
注:私はWindows XPを実行しています。私がこの変更のうちのどれかが他のバージョンのために変わるかどうか私にはわかりません、しかし、私はそれがそうする理由を見ません。
Python 2.7とPython 3.4がインストールされている自分のWindowsコンピュータで行ったことは、私のPython.exeファイルと同じディレクトリに単純な.batファイルを書いたことです。彼らは何かのように見えます、
cmd /k "c:\python27\python.exe" %*
%*を使うと、後で引数(Pythonファイル)を追加することができます。/kは、スクリプトの実行が終了した後にプロンプトを開いたままにします。それをpython27.batとして保存してから、Python 3ディレクトリに移動してそこにbatファイルを作成します。今私のコマンドラインで私は書くことができます
Python27 helloworld.py
または
Python34 helloworld.py
そしてそれらはそれぞれのバージョンのPythonで動作します。 c:\ python27とc:\ python34が入っていることを確認してください。環境変数.
私は ここ から私の答えを得ました
私はここの指示に従って3つのステップでこれを行いました:これはすべてここから直接取られます: http://ipython.readthedocs.io/en/stable/install/kernel_install.html 私は現在Windows 8上でPython 2.xを実行していて、Anaconda 4.2.13をインストールしています。
1)最初に最新バージョンのpythonをインストールしてください。
conda create -n python3 python=3 ipykernel
2)次にpython3を有効にします
activate python3
3)カーネルをインストールします。
python -m ipykernel install --user
Python 3がインストールされていて2をインストールしたい場合は、上記の2と3を入れ替えてください。新しいノートブックを開くと、Python 2と3のどちらかを選択できます。
Pythonをインストールした後にあなたのシステム環境変数をチェックしてください。python 3のディレクトリはあなたのPATH変数の中に最初にあるべきです、そしてpython 2。
どちらのパス変数が最初に一致しても、Windowsが使用します。
いつものようにpy -2はこのシナリオではpython2を起動します。
私は自分自身でその問題に遭遇しました、そしてあなたが起動したいバージョンを選ぶことができるように私は.batで私のランチャーを作りました。
唯一の問題はあなたの.pyがpythonフォルダになければならないことですが、とにかくここにコードがあります:
Python 2の場合
@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
Python 3の場合
@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として保存して、中の指示に従ってください。
最もよく使うもの(私の場合は3.3)を他のものの上に取り付けます。それはIDLEがあなたが欲しいものを使うことを強制するでしょう。
あるいは(python3.3 READMEから):
UnixおよびMacシステムで、同じインストール接頭辞(configureスクリプトの--prefix引数)を使用して複数のバージョンのPythonをインストールする場合は、プライマリpython実行可能ファイルが異なるバージョンのインストールによって上書きされないように注意する必要があります。 "make altinstall"を使用してインストールされたすべてのファイルとディレクトリにはメジャーバージョンとマイナーバージョンが含まれているため、並んで共存できます。 "make install"は$ {prefix} /bin/pythonX.Yを参照する$ {prefix}/bin/python3も作成します。同じプレフィックスを使用して複数のバージョンをインストールする予定がある場合は、どのバージョン(もしあれば)を自分の「プライマリ」バージョンにするかを決定する必要があります。 "make install"を使ってそのバージョンをインストールしてください。 "make altinstall"を使って他のすべてのバージョンをインストールします。
たとえば、Python 2.6、2.7、および3.3をインストールしたい場合は、2.7をプライマリバージョンとして使用し、「make install」を2.7のビルドディレクトリで実行し、「make altinstall」をその他のバージョンで実行します。
私が個人的にしたことはとても簡単です。
システム:Windows 8.1 x86_64、Python x64バージョン
Python 3.xはPython 2.xとの下位互換性を提供しているようですif Python 2.xバイナリがインストールされている。
公式のPython Webサイトからインストーラをダウンロードしてください。上記のようにインストールした後は、通常どおりPython 3を実行してください。今度はPython 2.xプログラムのためにそれらを次のように実行します:py -2 [command]
。
複数のPython 2.x専用プログラムでテスト済み。
私はそれらをインストールしなければなりませんでした。それから私は無料の(そして携帯用の)ソフトを http://defaultprogramseditor.com/ の下の "ファイルの種類の設定"/"コンテキストメニュー" /検索: "py"に使って、.pyファイルを選んで追加しました。 'open with IDLE'という名前の既存のコマンドをコピーし、名前をIDLE 3.4.1/2.7.8に変更し、プログラムパス内のそれぞれのバージョンのファイル番号を置き換えることによる、2 IDLE用の 'open'コマンド。 .pyファイルを右クリックして、使用したいIDLEを選択するだけです。お望みなら、直接通訳でも同じことができます。