CodeBlanks Logo Icon CodeBlanks

Virtual environment

venv ile sanal ortam oluşturmayı öğrenirsin.

Virtual environment

Sanal ortam (virtual environment), bir proje için ayrı bir Python dizini oluşturur. Buraya yüklenen paketler küresel Python'u kirletmez; her projenin kendi bağımlılık ağacı olur.

python -m venv .venv

Komut, .venv/ dizininde yeni bir Python kopyası oluşturur. Etkinleştirildiğinde pip install yalnızca bu dizine yazar; küresel paketleri etkilemez.

venv.EnvBuilder

venv.EnvBuilder, sanal ortam oluşturmayı Python koduyla yapan sınıftır. with_pip=True parametresi pip'i de kurar; clear=True var olan dizini temizler.

import venv

builder = venv.EnvBuilder(with_pip=True)
builder.create(".venv")

EnvBuilder komut satırındaki python -m venv ile aynı işi yapar; ancak betiklerden çağrılabilir. Bu, otomatik kurulum komutları yazmak için kullanışlıdır.

Uygulama EnvBuilder nesnesinin türünü yazdır

import venv ile başla. builder = venv.EnvBuilder(with_pip=False) ile bir kurucu nesne oluştur. print(type(builder).__name__) ile nesnenin sınıf adını yazdır.

Başlangıç kodu

main.py
# venv modülünü içe aktar
# with_pip=False ile bir EnvBuilder oluştur
# builder nesnesinin sınıf adını yazdır

Örnek çözüm

main.py
import venv

builder = venv.EnvBuilder(with_pip=False)
print(type(builder).__name__)

Beklenen çıktı

EnvBuilder

Soru ve cevaplar

Dersin sorularını cevaplarıyla birlikte inceleyebilirsin. Kendini denemek istersen dersi interaktif olarak çöz.

1 python -m venv .venv komutu ne yapar?

  • Sanal ortam oluşturur Doğru cevap
  • Tekerlek üretir
  • Paketi PyPI'ya yükler
  • Bağımlılıkları döndürür

Açıklama: venv komutu .venv dizininde sanal ortam oluşturur.

2 EnvBuilder çağrısını tamamla

Soru
import venv

builder = venv.____(with_pip=True)
Cevap
import venv

builder = venv.EnvBuilder(with_pip=True)

Açıklama: EnvBuilder sanal ortam oluşturan sınıftır.

3 venv kavramlarını eşleştir

Kavram Anlamı
venv Sanal ortam modülü
EnvBuilder Ortam oluşturan sınıf
with_pip pip de kurar
.venv Ortam dizini

İleri seviye bölümündeki tüm dersler