PaliSkill
Python avancé

Leçon 2 / 10 — Chapitre 9: Mise en pratique : gestionnaire de tâches

Une classe GestionnaireTaches pour regrouper les tâches

Deuxième étape : une classe GestionnaireTaches, qui contient une liste de tâches (vue au premier chapitre : un objet peut contenir une liste d'autres objets) et centralise toutes les opérations qu'on peut y faire.

from dataclasses import dataclass, field

@dataclass
class Tache:
    titre: str
    priorite: int = 2
    terminee: bool = False

class GestionnaireTaches:
    def __init__(self):
        self.taches = []

    def __len__(self):
        return len(self.taches)

g = GestionnaireTaches()
g.taches.append(Tache("Ecrire le rapport"))
g.taches.append(Tache("Corriger le bug", priorite=1))

print(len(g))

Ce code affiche 2 : __len__ (une méthode spéciale, comme __str__ ou __eq__ vues au troisième chapitre) permet à len(g) de fonctionner directement sur un objet GestionnaireTaches, exactement comme sur une liste — sans elle, len(g) lèverait une TypeError.

Regrouper les tâches dans une classe dédiée, plutôt que de manipuler directement une liste dans le programme principal, prépare le terrain pour les prochaines étapes : chaque opération (ajouter, filtrer, trier...) deviendra une méthode de GestionnaireTaches, centralisée à un seul endroit.

À vous de jouer : créez une classe GestionnaireTaches avec une liste taches et une méthode __len__, ajoutez-y deux tâches, et affichez len() du gestionnaire.

🔒

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