Özet - Paketleme
- Python kursu
- İleri seviye
- Ders 78/83
- 5 dk
pyproject.toml, venv ve pip'i birleştirerek paketlenebilir bir proje yazarsın.
Özet - Paketleme
Bu grupta Python paketlemenin temel araçlarını öğrendin:
- pyproject.toml: proje kimliği ve bağımlılıklar.
- setuptools:
[build-system]ile derleme aracı. - venv: izole sanal ortam.
- pip install -e .: editable kurulum,
sys.path. - requirements.txt: dondurulmuş bağımlılık listesi.
Son görevde bu araçların hepsini bir arada kullanacaksın: pyproject içeriğini tomllib ile okuyacak ve bağımlılık sayısını yazdıracaksın.
Uygulama Proje adını ve bağımlılık sayısını yazdır
import tomllib ile başla. data = tomllib.loads(...) çağrısıyla aşağıdaki TOML dizesini yapısal veriye çevir:
[project]
name = "demo"
version = "0.1.0"
dependencies = ["requests>=2.28", "httpx==0.24"]Sonra print(data["project"]["name"]) ile proje adını, print(len(data["project"]["dependencies"])) ile bağımlılık sayısını yazdır.
Başlangıç kodu
# tomllib modülünü içe aktar
# TOML dizesini yapısal veri olarak yükle
# proje adını yazdır
# bağımlılık sayısını yazdırÖrnek çözüm
import tomllib
data = tomllib.loads('''
[project]
name = "demo"
version = "0.1.0"
dependencies = ["requests>=2.28", "httpx==0.24"]
''')
print(data["project"]["name"])
print(len(data["project"]["dependencies"]))Beklenen çıktı
demo 2
Soru ve cevaplar
Dersin sorularını cevaplarıyla birlikte inceleyebilirsin. Kendini denemek istersen dersi interaktif olarak çöz.
1 Paketleme araçlarını eşleştir
| Kavram | Anlamı |
|---|---|
pyproject.toml |
Proje kimliği |
setuptools |
Derleme aracı |
venv |
Sanal ortam |
requirements.txt |
Bağımlılık listesi |
2 Aşağıdakilerden hangisi pyproject.toml içindeki geçerli bir tablodur?
- [python]
- [project] Doğru cevap
- [import]
- [package]
Açıklama: [project] tablosu paket kimliğini tutar.