CodeBlanks Logo Icon CodeBlanks

Birleştirme

Menü döngüsüyle CLI uygulaması yazarsın.

Todo CLI'yi birleştir

Artık tüm parçalar hazır: tasks listesi, add_task, list_tasks ve complete_task fonksiyonları. Şimdi hepsini bir araya getirelim:

add_task("Ekmek al")
add_task("Sut al")
list_tasks()
complete_task(0)
list_tasks()

Bu çağrı sırası, tipik bir kullanım akışını gösterir. önce görev eklenir, sonra listelenir, biri tamamlanır ve tekrar listelenir.

Tam akış

Tam bir akış şu şekilde çalışır:

add_task("Ekmek al")
add_task("Sut al")
list_tasks()
complete_task(0)
list_tasks()

Çıktı şu olur: önce boş liste, sonra 0 ve 1 görevleri listelenir, sonra 0 numaralı "Ekmek al [tamam]" olarak güncellenir ve liste tekrar yazdırılır.

Bu proje, gerçek CLI uygulamalarının iskeletidir; gerçekte komut satırı argümanları ile de kullanılabilir.

Uygulama Tüm akışı çağır

add_task("Ekmek al"), add_task("Sut al"), list_tasks(), complete_task(0) ve list_tasks() çağrılarını sırayla ekle.

Başlangıç kodu

main.py
# Todo CLI - bos görev listesi
tasks = []
print(tasks)
def add_task(title):
    tasks.append(title)
def list_tasks():
    for i, t in enumerate(tasks):
        print(i, t)
def complete_task(index):
    if 0 <= index < len(tasks):
        tasks[index] = tasks[index] + " [tamam]"
# Tum akisi cagir

Örnek çözüm

main.py
add_task("Ekmek al")
add_task("Sut al")
list_tasks()
complete_task(0)
list_tasks()

Beklenen çıktı

[]
0 Ekmek al
1 Sut al
0 Ekmek al [tamam]
1 Sut al

Soru ve cevaplar

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

1 Hangi çağrı sırası mantıklıdır?

  • add_task, list_tasks, complete_task Doğru cevap
  • list_tasks, add_task, complete_task
  • add_task, complete_task, list_tasks
  • complete_task, list_tasks, add_task

Açıklama: Önce görev eklenir, listelenir, sonra tamamlanır.

2 Çağrıyı tamamla

Soru
add_task("Ekmek al")
add_task("Sut al")
____()
complete_task(0)
list_tasks()
Cevap
add_task("Ekmek al")
add_task("Sut al")
list_tasks()
complete_task(0)
list_tasks()

Açıklama: list_tasks() ile görevleri listeleriz.

3 Proje parçalarını eşleştir

Kavram Anlamı
tasks = [] Veri modeli
add_task Ekleme
list_tasks Listeleme
complete_task Tamamlama

Başlangıç bölümündeki tüm dersler