Görev tamamlama
- Python kursu
- Başlangıç
- Ders 86/116
- 6 dk
complete_task ile durumu güncellersin.
Görev tamamlama (complete_task)
Görev tamamlamak için complete_task fonksiyonu yazalım. indeks alır, listede o indeksteki görevi günceller:
def complete_task(index):
if 0 <= index < len(tasks):
tasks[index] = tasks[index] + " [tamam]"Bu, görevin başlığına " [tamam]" ekler. if ile indeksin geçerli olduğunu kontrol ederiz; böylece listeden dışarı cikilmaz.
Bu yöntem, gerçek uygulamalarda yaygın bir kalıptır. Hatalı indeksler için güvenli bir geri dönüş sağlar ve programın çökmesini önler.
indeks kontrolü neden önemli?
indeks kontrolü olmadan tasks[10] gibi bir çağrı IndexError verir; bu programın çökmesini sağlar. if ile kontrol etmek, programın güvenli çalışmasını sağlar:
if 0 <= index < len(tasks):
# guvenli işlemBu, iyi bir yazılım alışkanlığıdır. Yanlış girdilere karşı kodu korur ve kullanıcının hata mesajları görmesini engeller. Bu yöntem CLI uygulamalarında çok önemlidir.
Uygulama complete_task fonksiyonunu ekle
complete_task adında bir fonksiyon tanımla; index parametresi alsın. Gövdede if 0 <= index < len(tasks): ile kontrol et ve tasks[index] = tasks[index] + " [tamam]" ile işaretle. complete_task(0) ile çağır, sonra list_tasks() ile listele.
Başlangıç kodu
# 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)
add_task("Ekmek al")
add_task("Sut al")
# complete_task fonksiyonunu ekleÖrnek çözüm
def complete_task(index):
if 0 <= index < len(tasks):
tasks[index] = tasks[index] + " [tamam]"
complete_task(0)
list_tasks()Beklenen çıktı
[] 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 0 <= index < len(tasks) neyi kontrol eder?
- index pozitif mi
- index tam sayı mi
- index büyük mu
- index listede mi Doğru cevap
Açıklama: Bu koşul index'in liste içinde olduğunu kontrol eder.
2 complete_task gövdesini tamamla
def complete_task(index):
if 0 <= index < ____(tasks):
tasks[index] = tasks[index] + " [tamam]"
def complete_task(index):
if 0 <= index < len(tasks):
tasks[index] = tasks[index] + " [tamam]"
Açıklama: len(tasks) listenin uzunluğunu verir.
3 Tamamlama parçalarını eşleştir
| Kavram | Anlamı |
|---|---|
index |
Parametre |
0 <= index < len |
Kontrol |
tasks[index] = |
Atama |
complete_task(0) |
Çağrı |