Windows Server 2012 で Python の複数のインストールを実行しています。おそらくこれを回避する方法を見つけることができますが、何が起こっているのか知りたいです。私が気付いていないかもしれない他の人々の Python のスケジュールされたタスクを壊した場合に備えて、インストールを根本的に変更することには慎重です。
(以下のコード ボックスはすべて PowerShell です)。
PS C:\> C:\Python34\Scripts\pip.exe list
jdcal (1.0)
pip (7.1.2)
setuptools (12.0.5)
virtualenv (13.1.2)
この Python 3.4 インストールには Django がインストールされていませんが、Python 33x86 インストールからバージョンを取得しているようです。それは正常ですか?
PS C:\> C:\Python34\python.exe -c "import django; print(django.get_version())"
1.6.5
PS C:\> C:\Python33x86\python.exe -c "import django; print(django.get_version())"
1.6.5
Python 3.4 に基づいて Python virtualenv を作成し、そこに Django 1.8.4 をインストールしました。「pip list」を実行すると、正しくインストールされていることが確認されます:-
PS C:\> D:\PyVirtualEnvs\example_py34\Scripts\activate.bat
PS C:\> D:\PyVirtualEnvs\example_py34\Scripts\pip.exe list | Select-String "Django "
Django (1.8.4)
ただし、その virtualenv 内にインポートすると、Django バージョン 1.6.5 が取得されます:-
PS C:\> D:\PyVirtualEnvs\example_py34\Scripts\python.exe -c "import django; print(django.get_version())"
1.6.5
これは virtualenv のバグですか、それとも何か不足していますか?
編集:この質問に関連している可能性がありますか?
EDIT2:ハムサンドイッチで提案されているように、 pyvenvを使用すると同じことが起こります。