setuptools
- Python kursu
- İleri seviye
- Ders 74/83
- 5 dk
setuptools ile paketlemeyi öğrenirsin.
setuptools
setuptools, Python paketlerini derleyen ve PyPI'ya yükleyen bir araçtır. Modern kullanımda doğrudan çağrılmaz; pyproject.toml içindeki [build-system] tablosuyla bildirilir.
[build-system]
requires = ["setuptools>=61"]
build-backend = "setuptools.build_meta"requires derleme için gereken paketleri; build-backend hangi arka ucun çalıştırılacağını belirler. Bu sayede pip install hangi aracı kullanacağını bilir.
[build-system] tablosu
[build-system] tablosu iki ana alandan oluşur. requires derleme sırasında yüklenecek paketlerin listesidir; build-backend derleme işlemini yürütecek Python nesnesinin yoludur.
[build-system]
requires = ["setuptools>=61"]
build-backend = "setuptools.build_meta"setuptools'ın build_meta arka ucu, kaynaktan tekerlek (wheel) üretir. Bu yapılandırma olmadan pip install hangi aracı çağıracağını bilemez.
Uygulama tomllib ile build-backend oku
import tomllib ile başla. tomllib.loads(...) çağrısıyla aşağıdaki TOML dizesini yapısal veriye çevir ve data değişkenine ata:
[build-system]
requires = ["setuptools>=61"]
build-backend = "setuptools.build_meta"Sonra print(data["build-system"]["build-backend"]) ile arka ucun yolunu yazdır.
Başlangıç kodu
# tomllib modülünü içe aktar
# build-system tablosunu yapısal veri olarak yükle
# build-backend alanını yazdırÖrnek çözüm
import tomllib
data = tomllib.loads('''
[build-system]
requires = ["setuptools>=61"]
build-backend = "setuptools.build_meta"
''')
print(data["build-system"]["build-backend"])Beklenen çıktı
setuptools.build_meta
Soru ve cevaplar
Dersin sorularını cevaplarıyla birlikte inceleyebilirsin. Kendini denemek istersen dersi interaktif olarak çöz.
1 build-backend satırını tamamla
[build-system]
requires = ["setuptools>=61"]
____ = "setuptools.build_meta"
[build-system]
requires = ["setuptools>=61"]
build-backend = "setuptools.build_meta"
Açıklama: build-backend, derleme arka üçünü belirtir.
2 setuptools.build_meta ne yapar?
- Paketi PyPI'ya yükler
- Kaynaktan tekerlek üretir Doğru cevap
- Sanal ortam oluşturur
- Bağımlılıkları döndürür
Açıklama: build_meta, kaynaktan tekerlek (wheel) üretir.
3 setuptools kavramlarını eşleştir
| Kavram | Anlamı |
|---|---|
setuptools |
Derleme aracı |
build_meta |
Tekerlek üretir |
requires |
Derleme paketleri |
wheel |
Yüklenebilir yapı |