Le condizioni annidate possono diventare molto complesse molto rapidamente. Ciò rende il codice difficile da leggere e i programmatori tendono ad evitare di utilizzare molte condizioni annidate (e codice troppo annidato in generale). Python fornisce l'istruzione elif che aiuta ad evitare l'uso di else seguito da 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!')
Questi due programmi fanno esattamente la stessa cosa. Stampano messaggi di saluto personalizzati e contengono molte istruzioni if/else. Tuttavia, il primo ha molti livelli di blocchi if/else annidati, mentre il secondo utilizza le istruzioni elif, che stanno per else if.
Sfida
Dato un voto che è un numero da 0 a 100, vogliamo sapere a quale valutazione del sistema americano (A, B, C, D e F) corrisponde.
Nota: Non usare solo istruzioni if con controlli di intervalli. Usa elif quando controlli un'altra condizione.