Introdução às Instruções If-Elif-Else em Python
Deslize para mostrar o menu
A declaração if-elif-else é uma ferramenta poderosa em Python que permite verificar múltiplas condições e executar diferentes blocos de código com base em qual condição é verdadeira. É especialmente útil quando há várias condições a serem avaliadas, mas apenas um bloco de código deve ser executado.
Quando é necessário escolher entre várias condições, elif é preferível ao uso de múltiplos comandos if. Isso porque elif garante que, uma vez que uma condição seja satisfeita, as demais são ignoradas, aumentando a eficiência. Em contraste, o uso de vários comandos if faz com que todas as condições sejam avaliadas de forma independente, o que pode resultar em verificações desnecessárias e código redundante.
Vamos acompanhar a duração do sono de um usuário e categorizá-la em diferentes faixas. Iremos verificar se o usuário atingiu sua meta de sono, está próximo de alcançá-la ou precisa de mais descanso.
1234567891011hours_slept = 6 sleep_goal = 8 if hours_slept < 0: print("Sleep hours cannot be negative.") if hours_slept >= sleep_goal: print("Great job! You've met your sleep goal!") if hours_slept >= sleep_goal - 2: print("You're almost there! Keep going, you'll reach your goal soon!") if hours_slept < sleep_goal - 2: print("You need more rest. Try to sleep a bit longer tonight.")
Nesta versão, todas as condições são avaliadas de forma independente, mesmo que uma delas já seja verdadeira. Isso leva a verificações redundantes. Por exemplo, se o usuário já atingiu sua meta, o código ainda verifica se ele está próximo da meta ou se precisa de mais descanso.
1234567891011hours_slept = 6 sleep_goal = 8 if hours_slept < 0: print("Sleep hours cannot be negative.") elif hours_slept >= sleep_goal: print("Great job! You've met your sleep goal!") elif hours_slept >= sleep_goal - 2: print("You're almost there! Keep going, you'll reach your goal soon!") else: print("You need more rest. Try to sleep a bit longer tonight.")
O uso de elif torna o código mais legível e eficiente, pois, uma vez que uma condição é atendida, as demais não precisam ser verificadas.
Este diagrama visualiza o fluxo de uma estrutura de decisão if-elif-else em Python. O processo começa avaliando a condição inicial do if:
- Se a primeira condição for verdadeira, o código dentro do bloco
ifé executado; - Se a primeira condição for falsa, passa para a próxima condição, que é o
elif. Se a condição doeliffor verdadeira, o bloco correspondente doelifé executado; - Se o primeiro
eliffor falso, outroelifpode ser verificado e, se for verdadeiro, seu respectivo bloco de código é executado; - Se nenhuma das condições do
ifoueliffor satisfeita (ou seja, todas forem falsas), o bloco finalelseé executado, garantindo que sempre um bloco de código seja executado.
Esse fluxo garante que apenas a primeira condição verdadeira seja executada, proporcionando uma maneira limpa e eficiente de lidar com múltiplas condições. A estrutura if-elif-else evita verificações redundantes e apenas um bloco de código é executado em toda a estrutura.
1. Qual é a vantagem de usar if-elif-else em vez de múltiplos comandos if?
2. O que será impresso pelo seguinte código?
Obrigado pelo seu feedback!
Pergunte à IA
Pergunte à IA
Pergunte o que quiser ou experimente uma das perguntas sugeridas para iniciar nosso bate-papo