Leçon 4 / 10 — Chapitre 10: Mise en pratique : suivi de dépenses
Calculer le total des dépenses par catégorie
Quatrième étape : calculer un total par catégorie pour l'ensemble des dépenses, avec un dictionnaire qui accumule les montants — le motif dictionnaire de listes (vu au premier chapitre), adapté ici à un cumul plutôt qu'à une liste.
depenses = [
{"categorie": "alimentation", "montant": 25},
{"categorie": "transport", "montant": 10},
{"categorie": "alimentation", "montant": 15},
]
def totaux_par_categorie(depenses):
totaux = {}
for d in depenses:
categorie = d["categorie"]
totaux[categorie] = totaux.get(categorie, 0) + d["montant"]
return totaux
print(totaux_par_categorie(depenses))
Ce code affiche {'alimentation': 40, 'transport': 10} : .get(categorie, 0) (vu au premier chapitre) renvoie 0 la première fois qu'une catégorie apparaît, puis la valeur déjà accumulée les fois suivantes — un accumulateur par clé de dictionnaire, plutôt qu'une seule variable comme dans les accumulateurs déjà vus.
Ce dictionnaire de totaux se parcourt ensuite normalement avec .items() (vu au premier chapitre) :
for categorie, total in totaux_par_categorie(depenses).items():
print(f"{categorie:<15}{total:>6} $")
À vous de jouer : avec des dépenses d'au moins trois catégories différentes, calculez et affichez le total de chaque catégorie.
Continuez ce module
Débloquez les leçons restantes ainsi que la certification finale.
2 500 XOF / 3,81 € / 4,15 $
Débloquez les 85 leçons restantes de ce module
Votre paiement est vérifié avant l'activation de l'accès