Menu
CoddyTech

If - Else Aninhado

Parte da seção Fundamentos do Journey de Python da Coddy. Lição 23 de 77.

As instruções If-Else aninhadas permitem verificar várias condições colocando uma instrução if-else dentro de outra. Você pode aninhar um bloco if dentro de um bloco else. Esse é um padrão comum e válido em Python.

Crie uma instrução if-else básica:

age = 18
title = ""
if age >= 18:
    title = "Adult"
else:
    title = "Minor"

Agora vamos adicionar uma condição aninhada dentro do bloco else:

age = 18
title = ""
allowed_to_drink = False
if age >= 18:
    title = "Adult"
else:
    title = "Minor"
    if age >= 13:
        title = "Teenager"
    else:
        title = "Child"

Você também pode aninhar uma condição dentro do bloco if:

age = 25
title = ""
allowed_to_drink = False
if age >= 18:
    title = "Adult"
    if age >= 21:
        allowed_to_drink = True
    else:
        allowed_to_drink = False
else:
    title = "Minor"

Nos dois exemplos, o if-else interno é executado somente quando o bloco que o contém é executado: aquele no bloco else é executado quando age >= 18 é falso, e aquele no bloco if é executado quando age >= 18 é verdadeiro. Colocar uma instrução if dentro de um bloco else (ou dentro de um bloco if) é totalmente válido. É exatamente isso que a torna "aninhada".

challenge icon

Desafio

Iniciante

Escreva um programa que determine a elegibilidade para assistir a um filme com base na idade e na orientação dos pais.

Observação: age e with_parent já estão definidos para você, com valores diferentes em cada caso de teste. Não os defina; apenas use-os.

Sua tarefa:
Use instruções if-else aninhadas para definir a variável message como uma das seguintes strings:

  1. Se age for 18 ou mais, defina message como "You can watch any movie".
  2. Se age for menor que 18:
    1. Se with_parent for True, defina message como "You can watch PG-13 movies".
    2. Se with_parent for False, defina message como "You can only watch G-rated movies".

Importante: Como with_parent já é um booleano, verifique-o diretamente (por exemplo, if with_parent:): não o compare a uma string como "true" ou "True".

Importante: As strings devem corresponder exatamente, incluindo maiúsculas e pontuação. Por exemplo, use "PG-13 movies" (com 'm' minúsculo), não "PG-13 Movies".

Experimente você mesmo

# Escreva seu código com if-else aninhados aqui


quiz iconTeste seus conhecimentos

Esta lição inclui um quiz rápido. Comece a lição para respondê-lo e acompanhar seu progresso.

Todas as lições de Fundamentos

Pratique por conta própria: Compilador de Python online