Les conditions imbriquées peuvent rapidement devenir très complexes. Cela rend la lecture du code difficile, et les programmeurs évitent généralement d'avoir trop de conditions imbriquées (et trop de code imbriqué en général). Python propose l'instruction elif qui aide à éviter d'utiliser else suivi de if :
if name == 'Alice':
print('Hey there!')
else:
if name == 'Bob':
print('How are you doing?')
else:
if name == 'Anna':
print('Hello, Anna')
else:
print('Hi!')
if name == 'Alice':
print('Hey there!')
elif name == 'Bob':
print('How are you doing?')
elif name == 'Anna':
print('Hello, Anna')
else:
print('Hi!')
Ces deux programmes font exactement la même chose. Ils affichent des messages de salutation personnalisés et contiennent plusieurs instructions if/else. Cependant, le premier a plusieurs niveaux de blocs if/else imbriqués, tandis que le second utilise des instructions elif, ce qui signifie else if.
Défi
Étant donné une note qui est un nombre de 0 à 100, nous voulons savoir à quelle lettre correspond cette note dans le système de notation américain (A, B, C, D et F).
Remarque : N'utilisez pas uniquement des instructions if avec des vérifications de plages. Utilisez elif lorsque vous vérifiez une autre condition.