CodeBlanks Logo Icon CodeBlanks

requirements.txt

requirements.txt ile bağımlılık yönetimini öğrenirsin.

requirements.txt

requirements.txt, bir projenin bağımlılıklarını satır satır listeler. pip install -r requirements.txt komutu listedeki her paketi kurar. Üretim dağıtımlarında pyproject.toml'a alternatif olarak kullanılır.

requests>=2.28
httpx==0.24

Dosyada her satır bir paket ve isteğe bağlı sürüm belirtecidir. pip freeze > requirements.txt komutu yüklü paketlerin tam sürümlerini dondurarak bu dosyayı üretir.

Sürüm belirteçleri

Bağımlılık satırlarında sürüm belirteçleri kullanılır: >= en az, == tam, < küçük, ~= uyumlu sürüm anlama gelir.

requests>=2.28    # en az 2.28
httpx==0.24      # tam 0.24
rich<13         # 13'ten küçük

Üretimde == ile tam sürüm kilitlemek öngörülebilirlik sağlar. Geliştirmede >= daha esnektir; ancak büyük sürüm değişikliklerinde sürprizlere yol açabilir.

Uygulama requirements.txt içeriğini say

requirements adlı bir dize değişkenine aşağıdaki içerikleri ata:

requests>=2.28
httpx==0.24

Sonra deps = [line for line in requirements.strip().split("\n") if line.strip()] ile satırları listele. print(len(deps)) ile satır sayısını, print(deps[0]) ile ilk satırı yazdır.

Başlangıç kodu

main.py
# requirements adlı bir dizeye iki satırlık bağımlılık listesi ata
# satırları boşlukları temizleyerek bir listeye çevir
# satır sayısını ve ilk satırı yazdır

Örnek çözüm

main.py
requirements = "requests>=2.28\nhttpx==0.24\n"

deps = [line for line in requirements.strip().split("\n") if line.strip()]
print(len(deps))
print(deps[0])

Beklenen çıktı

2
requests>=2.28

Soru ve cevaplar

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

1 pip freeze > requirements.txt ne yapar?

  • Tekerlek üretir
  • Paketleri siler
  • Sanal ortam oluşturur
  • Yüklü sürümleri döndürür Doğru cevap

Açıklama: pip freeze yüklü paketlerin tam sürümlerini dosyaya yazar.

2 >= belirtecini tamamla

Soru
requests____2.28
Cevap
requests>=2.28

Açıklama: >= en az bu sürümü ister.

3 Sürüm belirteçlerini eşleştir

Kavram Anlamı
>= En az
== Tam
< Küçük
~= Uyumlu

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