Je recompose un script python qui analyse un fichier XML dans un type de fichier de données différent. Ce faisant, je suis tombé sur une ligne très élégante de code:Opération mathématique avec conditionnel et booléen
nyear += (1900, 2000)[nyear < 83]
Je me demandais si quelqu'un sait ce que cette opération est appelée en Python? Je n'ai jamais vu de syntaxe comme celle-ci dans Python auparavant.
Par ailleurs, les résultats d'un couple nyear
valeurs seraient les suivantes:
>>> nyear = 17
>>> nyear += (1900, 2000)[nyear < 83]
2017
>>> nyear = 83
>>> nyear += (1900, 2000)[nyear < 83]
1983
'nan <83' retourne une valeur booléenne (' 'true' ou FALSE') qui est convertie en 0 si' false' ou 1 si'on'. Vous indexez donc le tuple '(1900, 2000)' à 0 ou 1, selon que la condition est remplie ou non. L'indexation conditionnelle est ce que j'appellerais ceci. – Abdou