Leçon 4 / 10 — Chapitre 9: Mise en pratique : gestionnaire de tâches
Marquer une tâche comme terminée
Quatrième étape : retrouver une tâche par son titre et modifier son état — le même motif de recherche déjà écrit à plusieurs reprises dans Python Intermédiaire, appliqué ici à des objets plutôt qu'à des dictionnaires.
class GestionnaireTaches:
def __init__(self):
self.taches = []
def ajouter(self, titre, priorite=2):
tache = Tache(titre, priorite)
self.taches.append(tache)
return tache
def trouver(self, titre):
for t in self.taches:
if t.titre == titre:
return t
return None
def marquer_terminee(self, titre):
tache = self.trouver(titre)
if tache is None:
raise KeyError(titre)
tache.terminee = True
g = GestionnaireTaches()
g.ajouter("Ecrire le rapport")
g.marquer_terminee("Ecrire le rapport")
print(g.taches[0].terminee)
Ce code affiche True : trouver renvoie l'objet Tache correspondant (ou None, vu au huitième chapitre de Python Intermédiaire), et marquer_terminee modifie directement son attribut terminee — puisque tache est une référence vers le même objet stocké dans self.taches, le modifier via tache.terminee = True modifie bien l'objet dans la liste, pas une copie séparée.
raise KeyError(titre) signale une tâche introuvable, exactement comme pour un dictionnaire (vu dans Python Intermédiaire) — cohérent avec le vocabulaire d'erreurs déjà utilisé ailleurs dans ce module.
À vous de jouer : ajoutez une méthode trouver et marquer_terminee, marquez une tâche comme terminée, et vérifiez son statut avec lister().
Continuez ce module
Débloquez les leçons restantes ainsi que la certification finale.
2 500 XOF / 3,81 € / 4,15 $
Débloquez les 87 leçons restantes de ce module
Votre paiement est vérifié avant l'activation de l'accès