Validando condições com `elif` no Python

Controle de Fluxo / Tutorial Python

O comando elif é usado em Python para verificar múltiplas condições em uma estrutura condicional. Ele é uma abreviação de "else if" e permite adicionar condições adicionais após um if.

Sintaxe

A sintaxe do elif em Python é semelhante à do if:

if condição1:
    # bloco de código executado se condição1 for verdadeira
elif condição2:
    # bloco de código executado se condição1 for falsa e condição2 for verdadeira

Exemplo:

x = 10

if x > 15:
    print("x é maior que 15")
elif x > 5:
    print("x é maior que 5, mas não maior que 15")

No exemplo acima, a mensagem "x é maior que 5, mas não maior que 15" será exibida porque a primeira condição é falsa e a segunda é verdadeira.

Usando múltiplos elif

Você pode usar vários comandos elif para verificar várias condições em sequência.

Exemplo:

nota = 85

if nota >= 90:
    print("Aprovado com excelência")
elif nota >= 70:
    print("Aprovado")
elif nota >= 50:
    print("Recuperação")
else:
    print("Reprovado")

No exemplo acima, o programa verifica as condições em ordem. Assim que uma condição verdadeira é encontrada, o bloco correspondente é executado, e as condições seguintes são ignoradas.

Bloco de código e indentação

Assim como no if, o bloco de código associado a um elif deve ser indentado corretamente.

Exemplo básico:

x = 20

if x > 30:
    print("x é maior que 30")
elif x > 10:
    print("x é maior que 10, mas não maior que 30")
print("Esta linha está fora da estrutura condicional")

No exemplo acima, a mensagem "x é maior que 10, mas não maior que 30" será exibida porque a condição correspondente ao elif é verdadeira. A última mensagem será exibida independentemente das condições, pois está fora da estrutura condicional.

Outros exemplos de uso do elif

Verificando intervalos de valores:

idade = 25

if idade < 18:
    print("Menor de idade")
elif idade < 60:
    print("Adulto")
else:
    print("Idoso")

Verificando condições com operadores lógicos:

x = 10
y = 5

if x > 10:
    print("x é maior que 10")
elif x > 5 and y < 10:
    print("x é maior que 5 e y é menor que 10")

Verificando valores em listas:

frutas = ["maçã", "banana", "laranja"]

if "uva" in frutas:
    print("A lista contém uva")
elif "banana" in frutas:
    print("A lista contém banana")

Diferença entre if e elif

A principal diferença entre if e elif é que o elif só é avaliado se todas as condições anteriores forem falsas. Isso permite criar estruturas condicionais mais claras e eficientes.

x = 10

if x > 15:
    print("x é maior que 15")
elif x > 5:
    print("x é maior que 5, mas não maior que 15")

No exemplo acima, o elif só será avaliado se a condição do if for falsa.