Outrepasser un key Error dans formule sum

Bonjour,
Je suis en train de faire un tableau de synthèse budgétaire dans un tableau qui en appelle cinq autres. Je le fais grâce à cette formule: (
sum(Budget_BVSHU.lookupRecords(code=$code).RECON2025) +
sum(Budget_PF_2025.lookupRecords(code=$code).RECON2025) +
sum(Budget_AGLS.lookupRecords(code=$code).RECON2025) +
sum(Budget_ALT1.lookupRecords(code=$code).RECON2025) +
sum(BudgetMUSPS.lookupRecords(code=$code).RECON2025)
)

mon problème:
Quand dans un de ces tableaux, cette colonne (RECON2025) n’existe pas car ne fait pas partie de leur synthèse budgétaire, toute ma somme se retrouve bloquée (KeyError). Je voudrais outrepasser ça et faire que même si dans toutes les tables il n’y pas de correspondance, que le calcul se fasse quand même. Est-ce que cela est possible ? Ou dois-je créer une colonne RECON2025 avec des zéro ?

merci à vous !

Bonjour,

Je pense qu’au lieu d’accéder directement à .RECON2025 qui provoque le keyerror si la colonne n’existe pas, il est préférable de faire getattr(r, ‹ RECON2025 ›, 0) qui tente d’accéder à l’attribut et retourne 0 si il est absent et laisse le calcul global intact du coup :

sum(getattr(r, ‹ RECON2025 ›, 0) for r in Budget_BVSHU.lookupRecords(code=$code)) +
sum(getattr(r, ‹ RECON2025 ›, 0) for r in Budget_PF_2025.lookupRecords(code=$code)) +
sum(getattr(r, ‹ RECON2025 ›, 0) for r in Budget_AGLS.lookupRecords(code=$code)) +
sum(getattr(r, ‹ RECON2025 ›, 0) for r in Budget_ALT1.lookupRecords(code=$code)) +
sum(getattr(r, ‹ RECON2025 ›, 0) for r in BudgetMUSPS.lookupRecords(code=$code))