PaliSkill
Python intermédiaire

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