Görev listeleme
- Python kursu
- Başlangıç
- Ders 85/116
- 6 dk
list_tasks ile görevleri yazdırırsın.
Görev listeleme (list_tasks)
Ekledigimiz görevleri listelemek için bir list_tasks fonksiyonu yazalım. enumerate ile hem indeks hem değer alırız:
def list_tasks():
for i, t in enumerate(tasks):
print(i, t)Bu, görevleri numaralandirilmis şekilde gösterir: 0 Ekmek al, 1 Sut al. indeks daha sonra tamamlama için kullanılacak.
enumerate nasıl çalışır?
enumerate(tasks) her döngüde bir (indeks, değer) ikilisi döndürür:
for i, t in enumerate(["Ekmek", "Sut"]):
print(i, t)
# 0 Ekmek
# 1 SutBu, klasik range(len(tasks)) döngüsüne göre daha Pythonic bir yöntemdir. indeks ve değere aynı anda erişmek için idealdir.
Bu, Python'da çok sık kullanılan bir kalıptır.
Uygulama list_tasks fonksiyonunu ekle
list_tasks adında bir fonksiyon tanımla; parametresiz. Gövdede for i, t in enumerate(tasks): döngüsü kur ve print(i, t) yapsın. list_tasks() ile çağır.
Başlangıç kodu
# Todo CLI - bos görev listesi
tasks = []
print(tasks)
def add_task(title):
tasks.append(title)
add_task("Ekmek al")
add_task("Sut al")
# list_tasks fonksiyonunu ekleÖrnek çözüm
def list_tasks():
for i, t in enumerate(tasks):
print(i, t)
list_tasks()Beklenen çıktı
[] 0 Ekmek al 1 Sut al
Soru ve cevaplar
Dersin sorularını cevaplarıyla birlikte inceleyebilirsin. Kendini denemek istersen dersi interaktif olarak çöz.
1 list_tasks gövdesini tamamla
def list_tasks():
for i, t in ____(tasks):
print(i, t)
def list_tasks():
for i, t in enumerate(tasks):
print(i, t)
Açıklama: enumerate hem indeks hem değer verir.
2 list(enumerate(["a", "b"])) ne döndürür?
- ["a", "b"]
- [0, 1]
- [(0, "a"), (1, "b")] Doğru cevap
- [("a", 0), ("b", 1)]
Açıklama: enumerate (indeks, değer) ikilileri döner.
3 Listeleme parçalarını eşleştir
| Kavram | Anlamı |
|---|---|
enumerate |
Indeks ve değer |
for i, t in |
Döngü şablonu |
print(i, t) |
Yazdırma |
list_tasks() |
Çağrı |