pyproject.toml
- Python kursu
- İleri seviye
- Ders 73/83
- 5 dk
pyproject.toml ile proje yapılandırmasını öğrenirsin.
pyproject.toml
pyproject.toml, modern bir Python projesinin yapılandırma dosyasıdır. Proje adı, sürümü ve bağımlılıkları burada tanımlanır. Biçim TOML'dir; Python 3.12'de tomllib modülüyle standart kütüphaneden okunur.
[project]
name = "demo"
version = "0.1.0"Dosya en az bir [project] tablosu içerir. Bu tablo, paketin kimliğini ve gereksinimlerini tutar; pip ve derleme araçları buradan okur.
[project] tablosu
[project] tablosunun zorunlu alanları name ve version'dur. dependencies alanı ise projenin çalışması için gereken paket listesini tutar.
[project]
name = "demo"
version = "0.1.0"
dependencies = ["requests>=2.28"]name PyPI'da görünen paket adıdır; version anlamsal sürümdür. Bu üç alan birlikte paketin kimliğini oluşturur ve pip tarafından kullanılır.
Uygulama tomllib ile proje adını 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:
[project]
name = "demo"
version = "0.1.0"Sonra print(data["project"]["name"]) ile proje adını yazdır.
Başlangıç kodu
# tomllib modülünü içe aktar
# pyproject içeriğini yapısal veri olarak yükle
# project tablosunun name alanını yazdırÖrnek çözüm
import tomllib
data = tomllib.loads('''
[project]
name = "demo"
version = "0.1.0"
''')
print(data["project"]["name"])Beklenen çıktı
demo
Soru ve cevaplar
Dersin sorularını cevaplarıyla birlikte inceleyebilirsin. Kendini denemek istersen dersi interaktif olarak çöz.
1 pyproject.toml içinde proje kimliğini hangi tablo tutar?
- [package]
- [build-system]
- [tool]
- [project] Doğru cevap
Açıklama: [project] tablosu ad, sürüm ve bağımlılıkları tutar.
2 name satırını tamamla
[project]
____ = "demo"
[project]
name = "demo"
Açıklama: name alanı paket adını tutar.
3 pyproject.toml tablolarını eşleştir
| Kavram | Anlamı |
|---|---|
[project] |
Paket kimliği |
[build-system] |
Derleme aracı |
name |
Paket adı |
version |
Sürüm |