Bu sorunun gerçekten tek bir "cevabı" yok, ancak bir karara varmanıza yardımcı olabilecek kesinlikle bazı yararlı kavramlar var.
Kullanım durumunuzda yanıtlanması gereken ilk soru "Python sistemini kullanmak istiyor muyum?" İşletim sisteminizle birlikte dağıtılan Python'u kullanmak istiyorsanız, apt-get install yöntemini kullanmak yeterli olabilir. Yine de işletim sistemi dağıtım yöntemine bağlı olarak, "Bu paketin birden çok sürümünü yüklemek istiyor muyum?" Gibi bazı sorular sormanız gerekir. Cevap evet ise, apt gibi bir şey kullanmak muhtemelen iyi bir fikir değildir. Dpkg hemen hemen dosya sisteminin kökündeki bir arşivi kaldıracaktır, bu nedenle paketin çok küçük varsayımlar altında güvenli bir şekilde kurulduğundan emin olmak paket bakımcısına kalmıştır. Debian paketlerinin çoğu söz konusu olduğunda, (birisi beni burada düzeltmekte özgür olabilir) basitçe taramayı kaldırıp üst düzey bir paket sağladıklarını varsayarım.
Örneğin, paketin "virtualenv" olduğunu varsayalım, sonuçta olursunuz /usr/lib/python2.x/site-packages/virtualenv
. İle bunu yüklerseniz easy_install
gibi bir şey almak istiyorum /usr/lib/python2.x/site-packages/virtualenv.egg-link
o kudreti noktaya /usr/lib/python2.x/site-packages/virtualenv-1.2-2.x.egg
bir dizin veya sıkıştırılmış yumurta olabilen. Pip, yumurta kullanmasa da benzer bir şey yapar ve bunun yerine üst düzey paketi doğrudan lib
dizine yerleştirir.
Yolda olmayabilirim, ancak önemli olan her yöntemin farklı ihtiyaçları hesaba katmasıdır. Bu nedenle virtualenv gibi araçlar, ihtiyacınız olan herhangi bir kitaplık ve sürüm kombinasyonuna sahip olabilmeniz için Python kitaplıklarınızı korumalı alana almanıza olanak sağladıkları için yararlıdır.
Setuptools ayrıca paketlerin çoklu dağıtım olarak kurulmasına izin verir, bu da tek bir mo dule_name.egg-link
oluşturulmadığı anlamına gelir . Bu paketleri içe aktarmak için pkg_resources ve __import__
işlevi kullanmanız gerekir .
Orijinal sorunuza geri dönersek, sistem python'undan memnunsanız ve farklı uygulamalar için ortamlar oluşturmak için virtualenv ve pip kullanmayı planlıyorsanız, apt-get kullanarak sistem düzeyinde virtualenv ve / veya pip yüklemek tamamen uygun görünüyor. Yine de dikkat edilmesi gereken bir nokta, Python dağıtımlarınızı yükseltmeyi planlıyorsanız, sistem sitesi paketlerinize geri bağlanırsanız, sanal ortamlarınızda bir dalgalanma etkisi yaratabilir.
Ayrıca, bu seçeneklerden hiçbirinin doğası gereği diğerlerinden daha iyi olmadığını da belirtmeliyim. Sadece farklı yaklaşımlar benimsiyorlar. Sistem sürümünü kullanmak, Python uygulamalarını kurmanın mükemmel bir yoludur, ancak Python ile geliştirmenin çok zor bir yolu olabilir. Kolay kurulum ve kurulum araçları, virtualenv olmayan bir dünyada çok kullanışlıdır, ancak aynı kitaplığın farklı sürümlerini kullanmanız gerekirse, o zaman oldukça kullanışsız hale gelir. Pip ve virtualenv daha çok sanal bir makine gibi davranır. Her şeyi yan yana kurmaya özen göstermek yerine, yepyeni bir ortam yaratırsınız. Buradaki dezavantaj, 30'dan fazla sanal ortamın daha sonra oldukça fazla disk alanı kullanmış ve dosya sisteminizi dağınık olmasıdır.
Gördüğünüz gibi, birçok seçenek varken hangi yöntemi kullanacağınızı söylemek zor, ancak kullanım durumlarınız üzerinde biraz araştırma yaparak işe yarayan bir yöntem bulabilmelisiniz.
ez_setup.py
pip almanın "hafif bir versiyonunu" seçiyorsunuz. Ben de aynısını yapardım ama yakın gelecekte kırılacağından korkarım ve yine burada sıkışıp kalacağım (her zaman yaptığım gibi)