Makineme iki Python sürümü yükledim (2.6 ve 2.5 sürümleri). Bir proje için 2.6, diğeri için 2.5 çalıştırmak istiyorum.
Hangisini kullanmak istediğimi nasıl belirleyebilirim?
Windows XP SP2 üzerinde çalışıyorum.
Makineme iki Python sürümü yükledim (2.6 ve 2.5 sürümleri). Bir proje için 2.6, diğeri için 2.5 çalıştırmak istiyorum.
Hangisini kullanmak istediğimi nasıl belirleyebilirim?
Windows XP SP2 üzerinde çalışıyorum.
Yanıtlar:
Python'un farklı bir kopyasını çalıştırmak, doğru yürütülebilir dosyayı başlatmak kadar kolaydır. Komut satırından yazarak bir python örneği başlattığınızdan bahsediyorsunuz python
.
Bunun Windows altında yaptığı, verilen adla eşleşen %PATH%
yürütülebilir bir dosya ( .bat
), toplu iş dosyası ( ), komut dosyası ( .cmd
) veya çalıştırılacak başka bir yürütülebilir dosyayı ( PATHEXT
çevre değişkeni tarafından kontrol edilir ) kontrol ederek ortam değişkenini trol etmektir . Çalıştırmak için doğru dosyayı bulduğunda çalıştırılıyor.
Şimdi, iki python sürüm 2.5 ve 2.6 yüklediyseniz, yolun her iki dizini de içinde olacaktır, PATH=c:\python\2.5;c:\python\2.6
ancak böyle bir şey, ancak Windows bir eşleşme bulduğunda yolu incelemeyi durduracaktır.
Ne gerçekten yapmak gerekir açıkça gibi uygulamalardan birini veya her ikisini çağırmaktır c:\python\2.5\python.exe
veya c:\python\2.6\python.exe
.
Diğer alternatif, python.exe
bunlardan birini python25
ve diğerini çağıran ilgili bir kısayol oluşturmaktır python26
; daha sonra python25
komut satırınızda çalıştırabilirsiniz .
Soruna iki çözüm daha eklemek:
#! c:\[path to Python 2.5]\python.exe
- Python 2.5
#! c:\[path to Python 2.6]\python.exe
ile çalıştırmak istediğiniz komut dosyaları için - Python 2.6 ile çalıştırmak istediğiniz komut dosyaları için
veya hangi Python sürümünü istediğinizi belirterek python
run run pylauncher command ( py
) komutunu çalıştırmak yerine ;
py -2.6
- sürüm 2.6
py -2
- en son yüklü sürüm 2.x
py -3.4
- sürüm 3.4
py -3
- en son yüklü sürüm 3.x
virtualenv -p c:\[path to Python 2.5]\python.exe [path where you want to have virtualenv using Python 2.5 created]\[name of virtualenv]
virtualenv -p c:\[path to Python 2.6]\python.exe [path where you want to have virtualenv using Python 2.6 created]\[name of virtualenv]
Örneğin
virtualenv -p c:\python2.5\python.exe c:\venvs\2.5
virtualenv -p c:\python2.6\python.exe c:\venvs\2.6
o zaman ilkini etkinleştirebilir ve Python 2.5 ile böyle çalışabilirsiniz
c:\venvs\2.5\activate
ve Python 2.6'ya geçmek istediğinizde
deactivate
c:\venvs\2.6\activate
c:\venvs\2.5\scripts\activate
. Bu bir fark yaratırsa Windows 10'dadır. Bunun dışında bir cazibe gibi çalışıyor, teşekkürler.
Python 3.3'ten itibaren, Windows için resmi Python başlatıcısı var ( http://www.python.org/dev/peps/pep-0397/ ). Şimdi, #!pythonX
yorumlayıcının istenen sürümünü Windows'ta da belirlemek için kullanabilirsiniz . Daha fazla ayrıntı göster benim başka yorumunda veya PEP 397 okuyun.
Özet: Belirtilen py script.py
Python sürümünü #!
veya #!
eksikse Python 2'yi başlatır . py -3 script.py
Lansmanlar Python 3.
.py
uzantıyla ilişkilendirmeleri ayarlar . Başlatıcı kendisi C:\Windows
zaten içinde yüklü PATH
. Bu şekilde, PATH
değişkenin de değiştirilmesine gerek yoktur.
@Alexander'a göre aşağıdaki gibi bir dizi sembolik bağlantı yapabilirsiniz. Onları yolunuza dahil olan bir yere koyun, böylece kolayca çağrılabilirler
> cd c:\bin
> mklink python25.exe c:\python25\python.exe
> mklink python26.exe c:\python26\python.exe
C: \ bin veya onları yerleştirdiğiniz her yerde yolunuzda olduğu sürece, artık
> python25
mklink
yalnızca yerel olarak Windows Vista / 2008 + 'da kullanılabilir. XP ve Server 2003'te fsutil hardlink create <new filename> <existing filename>
, <yeni dosya adını> kullanarak veya yolunuzdaki bir yere koymak veya taşımak yerine "sabit bağlantı" oluşturulabilir . Ancak, sabit bağlantılar yalnızca aynı sürücüde çalışır.
python yükle
Çevre değişkeni
PYTHON2_HOME: C:\Python27
PYTHON3_HOME: C:\Python36
Path: %PYTHON2_HOME%;%PYTHON2_HOME%\Scripts;%PYTHON3_HOME%;%PYTHON3_HOME%\Scripts;
dosya yeniden adlandırma
bip
python2 -m pip install package
python3 -m pip install package
python
komut OS için kafa karıştırıcı olurdu.
Örneğin 3.6 sürüm türü için py -3.6
. Ayrıca 32bit ve 64bit sürümleriniz varsa py -3.6-64
veya yazabilirsiniz py -3.6-32
.
py
yürütülebilir dosya - bu sadece bir pencere eklentisi mi? Bunu, en üstte bulunan bir platformlar arası komut satırı komut dosyasına dahil etmek mümkün mü: #!/usr/bin/env python3
örneğin?
Python'u yüklediğinizde, diğer büyük sürümlerin diğer yüklemelerinin üzerine yazılmaz. Bu nedenle, 2.6.6 yüklendiğinde 2.6.5'in üzerine yazılmasına rağmen Python 2.5.x'in yüklenmesi Python 2.6.x'in üzerine yazılmaz.
Böylece sadece yükleyebilirsiniz. Sonra istediğiniz Python sürümünü çağırırsınız. Örneğin:
C:\Python2.5\Python.exe
Python 2.5 için pencerelerde ve
C:\Python2.6\Python.exe
Windows'da Python 2.6 için veya
/usr/local/bin/python-2.5
veya
/usr/local/bin/python-2.6
üzerinde , Windows (Linux ve OS X dahil) Unix.
Unix'e (Linux ve OS X dahil) python
yüklediğinizde, yüklediğiniz son komut olan genel bir komut alırsınız . Çoğu komut dosyası açıkça /usr/local/bin/python2.5 veya sadece buna karşı korumak için bir şey çağıracağı için bu çoğunlukla sorun değildir. Ancak bunu yapmak istemiyorsanız ve muhtemelen böyle yükleyemezseniz:
./configure
make
sudo make altinstall
"Altinstall" bunu kuracak araçlar Not ama olacak değil değiştirinpython
komutunu.
Windows'da python
bildiğim kadarıyla global bir komut almıyorsunuz, bu bir sorun değil.
C:\Python2.5
veya C:\Python2.6
dizini görünürse, kullanmak istediğiniz .exe'ye açıkça farklı bir yol belirterek geçersiz kılmadıkçaPATH
Python'un karşılık gelen sürümü varsayılan olur .
Pyenv-win projesini şiddetle tavsiye ediyorum .
Sayesinde kirankotari eserinin, şimdi pyenv bir Windows sürümünü var.
İşte hızlı bir kesmek:
C:\Users\Your name
)name_of_your_shortcut.lnk
(kullanıyorum p27.lnk
)cp c: \ python27 \ bin \ python.exe olarak python2.7.exe
cp c: \ python34 \ bin \ python.exe olarak python3.4.exe
hepsi sistem yolunda, çalıştırmak istediğiniz sürümü seçin
C:\Users\username>python2.7
Python 2.7.8 (default, Jun 30 2014, 16:03:49) [MSC v.1500 32 bit (Intel)] on win
32
Type "help", "copyright", "credits" or "license" for more information.
>>>
C:\Users\username>python3.4
Python 3.4.1 (v3.4.1:c0e311e010fc, May 18 2014, 10:38:22) [MSC v.1600 32 bit Intel)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>>
Windows 7'de kolay ve verimli geçiş yapmak için bir toplu iş dosyası kullanma Bunu kullanıyorum:
Ortam değişkeni iletişim kutusunda (C: \ Windows \ System32 \ SystemPropertiesAdvanced.exe),
Kullanıcı değişkenleri bölümünde
yol ortamı değişkenine% pathpython% ekledi
python yollarına yapılan tüm referanslar kaldırıldı
Bölümünde sistem değişkenleri
Her python yüklemesi için toplu iş dosyaları oluşturdum (3.4 x64 için örnek)
Name = SetPathPython34x64 !!! ToExecuteAsAdmin.bat ;-) sadece hatırlamak için.
Dosyanın içeriği =
Set PathPython=C:\Python36AMD64\Scripts\;C:\Python36AMD64\;C:\Tcl\bin
setx PathPython %PathPython%
Sürümler arasında geçiş yapmak için toplu iş dosyasını yönetici modunda yürütüyorum.
!!!!! Değişiklikler AÇILAN SUBSEQUENT komut istemi pencereleri için geçerlidir. !!!
Yani tam kontrolüm var.
Python'un birden fazla sürümünü pencerelerde çalıştırmanın en kolay yolu aşağıda açıklanmıştır: -
1) en son sürümlerini indirin piton gelen python.org/downloads Sisteminiz için uygun sürümü seçerek.
2) Yükleyiciyi çalıştırın ve python 3'te yolu otomatik olarak ayarlamak için Yola python 3.x ekle'yi seçin (onay kutusunu tıklatmanız yeterlidir). Senin piton 2 yükleyici kadar piton 2 açık için, ne istersen tercihleri seçmek ama sadece set hatırlamak yoluna Ekleme python.exe için yerel sabit diske yüklenecek , Şimdi hemen yanında tıklayıp bitirmek için yükleyici bekleyin.
3) Her iki kurulum da tamamlandığında. Özelliklerine Git - - Bilgisayarımda sağ tıklayın ortam değişkenleri Git - - gelişmiş sistem ayarlarını seçin Sistem değişkenleri altında yeni Tıklayın ve yeni bir ekleme sistem değişkeni ile değişken adı olarak PY_PYTHON ve bu set değişken değeri için 3 . Şimdi Tamam'a tıklayın ve işiniz bitti.
4) Şimdi bunu test etmek için komut istemini açın . Bir kez orada python veya py yazın , python3 açmalıdır .
5) Şimdi exit () yazarak python3'dan çıkın . Şimdi py -2 yazın, python 2'yi açmalıdır.
Bunların hiçbiri işe yaramazsa bilgisayarı yeniden başlatın ve sorun devam ederse her şeyi kaldırın ve adımları tekrarlayın.
Teşekkürler.
Anaconda Navigator'dan grafiksel olarak farklı python geliştirme ortamları oluşturabilirsiniz. Farklı python sürümleriyle çalışırken aynı problemim vardı, bu yüzden farklı python geliştirme ortamları oluşturmak için anaconda navigator kullandım ve her ortamda farklı python sürümleri kullandım.
İşte bunun için yardım belgeleri.
https://docs.anaconda.com/anaconda/navigator/tutorials/manage-environments/
Hızlı Ortam Düzenleyicisi'ni kullanarak istediğiniz Python kurulumunun dizinini yukarı itebilirsiniz. Örneğin, python'u c: \ Python27 dizininden başlatmak için, c: \ Python27 dizininin Path ortam değişkenindeki c: \ Python36 dizininden önce veya üstünde olduğundan emin olun. Deneyimlerime göre, Path ortamında bulunan ilk python yürütülebilir dosyası yürütülüyor. Örneğin, Python27 ile MSYS2 yüklü ve C: \ Python36 önce yola C: \ MSYS2 eklediğim için, C: \ MSYS2 .... klasöründen python.exe yürütülüyor.
Sadece doğru çalıştırılabilir dosyayı arayın
python
girmek yerine python2.5
veya deneyin python2.6
. Ben bir windows kullanıcısı değilim, ancak unix / usr / bin / python genellikle tam olarak yürütülebilir çalıştırılabilir bir takma