piton

Python Sanal Ortamları Nasıl Oluşturulur ve Yönetilir

Python Sanal Ortamları Nasıl Oluşturulur ve Yönetilir
Python geliştiricilerinin, uygulama geliştirmek için standart ve standart olmayan kaynaklardan paketler kurup yükselttiklerini görmek oldukça yaygındır. Sebepler, bir modülün daha yeni bir sürümünü kullanmaktan, bir gerileme olması durumunda belirli bir sürümü kullanmaya kadar değişebilir.

Bu gereksinimler ve kullanım durumları, farklı uygulamalar aynı kitaplığın farklı sürümlerini gerektirdiğinde yönetilmesi zor olabilir. Neyse ki Python, sanal ortamları kullanarak geliştirme ortamlarını izole etmek için sağlam bir çözüm sunar.

Python Sanal Ortamı Nedir??

Python sanal ortamı, tüm standart kitaplıklarıyla birlikte belirli bir Python kurulumunu içeren bağımsız bir dizin ağacıdır. Belirli bir kitaplık sürümü gerektiren uygulamalar, sistemi veya diğer Python uygulamalarını kirletmeden bu sanal ortamlarda izole edilebilir. Her sanal ortam ayrı bir sanal alan olduğundan istediğiniz kadar sanal ortam oluşturabilirsiniz.

Sanal Ortamlar Oluşturma ve Yönetme

Ubuntu'da sanal ortamlar oluşturmak için önce aşağıdaki komutu çalıştırarak gerekli bağımlılık paketini kurun:

$ sudo apt kurulumu python3-venv

Artık şu komutu çalıştırarak sanal ortamlar oluşturabilirsiniz:

$ python3 -m venv myenv

Yukarıdaki komutu çalıştırmak, ana dizininizde “myenv” adında bir sanal ortam yaratacaktır. Python'un başka bir sürümünü kullanmak istiyorsanız, yukarıdaki "python3" yerine alternatif Python ikili dosyanızın tam yolunu kullanabilirsiniz.

Yukarıda oluşturulan özel ortamı etkinleştirmek için şu komutu çalıştırın:

$ kaynak myenv/bin/etkinleştir

Sanal ortam etkinleştirildiğinde, kabuk istemi, kullandığınız mevcut sanal ortamı yansıtacak şekilde değişecektir. "sys" çalıştırırsanız.path ”komutunun içindeki Python yorumlayıcısı, sanal ortamın düzgün çalıştığını görebilirsiniz. Python şimdi oluşturduğunuz özel ortam içindeki paketleri arayacaktır.

Kabuk isteminiz sanal ortamın adını önek olarak göstermiyorsa, çalıştırdığınız herhangi bir Python dosyası bunun yerine sistem Python'u kullanır. Bu nedenle, özel ortamınızda bir dosya çalıştırmadan önce sanal ortamı kaynaklamak gerekir.

Komutu çalıştırarak sanal bir ortamı devre dışı bırakabilirsiniz:

$ devre dışı bırak

Her Python sanal ortamı bir "pyvenv" içerir.Varsayılan olarak "false" olarak ayarlanmış bir "include-system-site-packages" anahtarına sahip cfg" dosyası. Bu anahtar, sanal ortama sistem site paketlerinin kullanılıp kullanılmayacağını söyler. "true" olarak ayarlanırsa, sanal ortamda Python, sanal ortamda bir paket bulunamaması durumunda sistem paketlerine bakar. Ayrıca, sistemde kurulu tüm paketleri sanal ortam içinde içe aktarılabilir hale getirecektir.

Bir sanal ortamı silmek için sanal ortam dizinini silmeniz yeterlidir ve silinecektir.

Virtualenv'i harici USB sürücülerinde oluşturmak ve depolamak mümkündür. NTFS veya EXT dosya sisteminde biçimlendirilmiş USB sürücünüz olması gerekir. FAT32 dosya sistemi, sanal ortamların çalışması için gerekli olan sembolik bağlantıları desteklemiyor.

Paketleri Sanal Ortamda Kurmak için Pip Paket Yöneticisini Kullanma

Sanal bir ortamda, paketleri kurmak, yükseltmek ve kaldırmak için pip paket yöneticisini kullanabilirsiniz. Belirli bir sürüm numarası belirterek bir paketi düşürmek veya yükseltmek mümkündür.

Komutu çalıştırarak pip kullanarak bir paket yükleyebilirsiniz (pygame'i istediğiniz paket adıyla değiştirin):

$ pip kurulum pygame

Aranabilir bir pip paketleri deposu burada bulunabilir.

Bir paketi kaldırmak için şu komutu kullanın:

$ pip kaldırma pygame

Bir paketin tüm sürümlerini görmek için şu komutu çalıştırın:

$ pip kurulum pygame==

Belirli bir sürüme düşürmek veya yükseltmek için komutu kullanın ("1.9.5”, istediğiniz sürüm numarası ile):

$ pip kurulum pygame==1.9.5

Bir paketi en yeni sürüme yükseltmek için şu komutu çalıştırın:

$ pip kurulumu --upgrade pygame

Sanal ortamda kurulu tüm paketleri görmek için şu komutu çalıştırın:

$ pip listesi

Virtualenv içinde kurulu paketlerin bir listesini kaydetmek için şu komutu çalıştırın:

$ pip dondurma > gereksinimler.Txt

Yukarıdaki "gereksinimleri" kullanabilirsiniz.paketleri toplu olarak kurmak için txt” dosyası. Bir kullanım durumu, tüm paketleri sıfırdan kurarak mevcut bir ortamı çoğaltmaktır. Pip paketlerini toplu olarak kurmak için şu komutu çalıştırın:

$ pip kurulum -r gereksinimleri.Txt

Python Sanal Ortamlarını Python Dışı Uygulamalarla Kullanma

Diğer programlama dillerinde yazılmış uygulamalar, pip veya başka herhangi bir Python paket yöneticisi bu alternatif programlama dilleri/çerçeveleri için ikili dosyalar ve paketler sağladığı sürece Python sanal ortamlarında korumalı alana alınabilir.

Düğümün kurulumunu açıklayan küçük bir örnek.Python sanal ortamında js. Aşağıdaki komutları tek tek çalıştırın:

$ python3 -m venv my_node_env
$ kaynak my_node_env/bin/activate
$ pip yükleme tekerleği
$ pip kurulum düğümü
$ düğümü -p
$ düğümü --versiyon
$ düğümü --versiyon

Tamamlandığında, tamamen izole edilmiş bir Düğümünüz olacak.js ortamı. Farklı Düğümler için istediğiniz kadar sanal ortam oluşturabilirsiniz.js uygulamaları. npm paket yöneticisi aracılığıyla kurulan paketler yalnızca etkinleştirilmiş sanal ortamla sınırlandırılacaktır.

Sonuç

Python sanal ortamı oluşturmak, geliştirme ortamlarını kapsayıcı hale getirmenin mükemmel bir yoludur. Her sanal ortamın kendi Python ikili dosyası ve kendi bağımsız paketleri vardır. Aynı sistem üzerinde birden fazla Python uygulaması geliştirmek, ev ve kök dizininizi hızla kirletebilir ve sanal ortamlar, bunların bakımını çok kolay hale getirir.

Linux için En İyi 5 Ergonomik Bilgisayar Faresi Ürünleri
Uzun süreli bilgisayar kullanımı bileğinizde veya parmaklarınızda ağrıya neden olur mu?? Sert eklemlerden muzdarip misiniz ve sürekli ellerinizi sıkma...
How to Change Mouse and Touchpad Settings Using Xinput in Linux
Most Linux distributions ship with “libinput” library by default to handle input events on a system. It can process input events on both Wayland and X...
Remap your mouse buttons differently for different software with X-Mouse Button Control
Maybe you need a tool that could make your mouse's control change with every application that you use. If this is the case, you can try out an applica...