Leçon 7 / 10 — Chapitre 10: Mise en pratique : suivi de dépenses
Calculer un budget restant et alerter si dépassé
Septième étape : comparer le total des dépenses à un budget fixé à l'avance, et lever une alerte en cas de dépassement — une exception personnalisée, comme au cinquième et au huitième chapitre.
class BudgetDepasseError(Exception):
pass
def verifier_budget(depenses, budget):
total = sum(d["montant"] for d in depenses)
restant = budget - total
if restant < 0:
raise BudgetDepasseError(f"Budget depasse de {-restant} $")
return restant
depenses = [{"montant": 25}, {"montant": 10}, {"montant": 40}]
try:
restant = verifier_budget(depenses, 50)
print(f"Budget restant : {restant} $")
except BudgetDepasseError as e:
print("Alerte :", e)
Ce code affiche Alerte : Budget depasse de 25 $ : le total des dépenses (75 $) dépasse le budget fixé (50 $) de 25 $, et BudgetDepasseError est levée avec un message précis, intercepté par try/except.
sum(d["montant"] for d in depenses) utilise une expression génératrice (vue au huitième chapitre), une variante compacte de compréhension directement passée à sum().
À vous de jouer : testez verifier_budget avec un budget suffisant, puis avec un budget insuffisant, et vérifiez les deux comportements.
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