As condições aninhadas podem aprofundar-se muito rapidamente. Isso dificulta a leitura do código, e os programadores tendem a evitar ter muitas condições aninhadas (e demasiado código aninhado em geral). O Python fornece a funcionalidade elif, que ajuda a evitar utilizar else seguido de uma declaração 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!')
Estes dois programas fazem exatamente o mesmo. Eles imprimem mensagens de saudação personalizadas e contêm várias instruções if/else. No entanto, o primeiro tem muitas camadas de blocos if/else aninhados, enquanto o segundo utiliza instruções elif, que significa else if.
Desafio
Tendo uma nota que é um número de 0 a 100, queremos saber a que corresponde essa nota no sistema de classificação americano por letras (A, B, C, D e F).
Nota: Não utilize apenas declarações if com verificações de intervalos. Use elif ao verificar outra condição.