Alura > Cursos de Programação > Cursos de > Conteúdos de > Primeiras aulas do curso Praticando Python: condicionais if, elif e else

Praticando Python: condicionais if, elif e else

Condicionais if, elif e else - Condicionais if, elif e else

Olá, meu nome é André Santana, sou instrutor da Alura, na Escola de Programação.

Audiodescrição: André se declara um homem branco. Ele tem barba cheia de comprimento médio e cabelos curto, ambos castanho-escuros. Usa óculos redondos de armação metálica e veste uma camiseta vermelha. Está sentado em uma cadeira gamer de encosto preto e, a sua frente, tem um microfone. No fundo, tem uma parede iluminada por luzes LED verde e azul e, à esquerda, uma estante com itens de decoração.

Aprenderemos sobre como funcionam os desvios condicionais e quais são as estruturas necessárias para empregá-los em nossos códigos.

Descobrindo a sintaxe de condicionais

Condicionais são estruturas que permitem executar diferentes blocos de código, desviando o comportamento do processador. Basicamente, a estrutura utiliza a palavra reservada if em uma expressão.

Essa expressão define um teste, que será verdadeiro ou falso, para podermos entrar ou não nessa condição. Depois do if, escrevemos os dois pontos (:), obrigatórios para indicar qual bloco pertence a essa condição. Outro bloco opcional é o else, que nos leva para outro caminho, mas ele é opcional e nem sempre precisa vir acompanhado do bloco if.

Entendendo com exemplos

Vejamos um exemplo de como o desvio condicional funciona.

nome = "Alura"

if nome == "Alura":
    print("Boas vindas")

Alocamos na variável nome o texto "Alura". Depois, verificamos se o valor dentro de nome é igual a "Alura", o que só pode resultar em uma resposta de verdadeiro ou falso. Nesse caso, é verdadeiro, então desviamos para essa condição, e exibimos na tela a mensagem "Boas vindas".

Condição falsa

No entanto, nem sempre queremos que essa condição seja verdadeira. Analisemos esse outro exemplo.

nome = "Start"

if nome == "Alura":
    print("Boas vindas")

Neste exemplo, alocamos na variável nome o texto "Start" e, quando comparamos se nome é igual a "Alura", essa operação retorna falso. Não desviaremos para o código print(), e não exibiremos a mensagem de "Boas vindas".

Condição com else

Quando utilizamos os blocos if e else juntos, conseguimos mapear os dois comportamentos de condição: verdadeiro e falso.

nome = "Start"

if nome == "Alura":
    print("Boas vindas")
else:
    print("Nome desconhecido")

Neste exemplo, ainda alocamos "Start" na variável nome. Verificamos primeiro se nome é igual a "Alura", mas não é. Então desviamos para o segundo bloco, que é o bloco else, mostrando a mensagem "Nome desconhecido" no terminal.

Usando o elif

Quando temos no mesmo contexto a necessidade de mais uma comparação, seguindo uma regra lógica, acrescentamos um terceiro bloco de verificação: o elif.

nome = "Start"

if nome == "Alura":
    print("Bem-vindo à Alura!")
elif:
    print("Bem-vindo ao Latam!")
else:
    print("Nome desconhecido.")

Neste exemplo, a variável nome recebe a alocação do texto "Alura" e começamos verificando se nome é igual a "Alura". Caso seja verdadeiro, mostramos a mensagem "Bem-vindo à Alura".

Em outras circunstâncias, temos mais de uma comparação. Nosso elif verifica se nome é igual a "Latam" e, se for verdadeiro, exibimos a mensagem "Bem-vindo a Latam". Caso seja falsa, caímos no else, já que essas três comparações fazem parte do mesmo contexto.

Uma vez que entramos no primeiro desvio condicional, o elif, os outros dois blocos não serão executados, evitando comportamentos indesejados na lógica de programação.

Operadores de comparação

Para executar essas operações, temos um conjunto de operadores de comparação que retornam sempre verdadeiro ou falso. Esses operadores são: maior que (>), menor que (<), igual a (==), diferente de (!=), maior ou igual a (>=) e menor ou igual a (<=).

Temos alguns exemplos com operações usando números e uma descrição para que você possa entender como os operadores funcionam.

OperadorConceitoExemplo
>Verifica se um valor é maior que outrox > 10
<Verifica se um valor é menor que outrox < 10
==Verifica se um valor é igual a outrox == 10
!=Verifica se um valor é diferente de outrox != 10
>=Verifica se um valor é maior ou igual a outrox >= 10
<=Verifica se um valor é menor ou igual a outrox <= 10

Operadores lógicos

Quando falamos de desvios condicionais, também temos os operadores lógicos, que combinam duas ou mais comparações e retornam um valor de verdadeiro (true) ou falso (false). Esses operadores são o and (e) e o or (ou). É importante mencionarmos a diferença entre os dois principais operadores.

O operador and verifica se duas condições são verdadeiras, e o resultado será verdadeiro apenas se ambas as condições forem verdadeiras. Podemos utilizar uma tabela verdade para verificar que, no caso do operador and, se a condição 1 for verdadeira e a condição 2 for verdadeira, o resultado será verdadeiro. Em qualquer outra situação, com pelo menos uma condição falsa, o resultado será falso.

Operador and

Condição 1Condição 2Resultado
VerdadeiroVerdadeiroVerdadeiro
VerdadeiroFalsoFalso
FalsoVerdadeiroFalso
FalsoFalsoFalso

Já no caso do operador or, basta uma das condições ser verdadeira para o resultado ser verdadeiro. Na tabela verdade, se a condição 1 for verdadeira ou a condição 2 for verdadeira, ou ambas forem verdadeiras, o resultado será verdadeiro. O resultado só será falso quando ambas as condições forem falsas.

Condição 1Condição 2Resultado
VerdadeiroVerdadeiroVerdadeiro
VerdadeiroFalsoVerdadeiro
FalsoVerdadeiroVerdadeiro
FalsoFalsoFalso

Para lembrar:

Aprendendo com exemplos

Este é um exemplo de código com and:

idade = int(input("Informe sua idade: "))
tem_documento = input("Tem documento? (sim/não): ")

if idade >= 18 and tem_documento == "sim":
    print("Entrada permitida!")
else:
    print("Entrada negada.")

Neste exemplo, verificamos duas condições combinadas para saber se uma pessoa pode ter acesso a um evento. Inicialmente, temos a variável idade, à qual atribuímos um valor informado pelo usuário. Também verificamos se a pessoa tem ou não documento, assumindo que as respostas possíveis são "sim" ou "não".

Utilizando o desvio condicional, verificamos se a idade da pessoa é maior ou igual a 18 e, ao mesmo tempo, se ela tem documento. Se ambas as condições forem verdadeiras, desviamos para o primeiro if, indicando que a entrada é permitida. Caso contrário, desviamos para o else, sugerindo que a entrada deve ser negada.

Agora observaremos um exemplo do uso do operador or:

feriado = input("Hoje é feriado? (sim/não): ")
folga = input("Você tem folga hoje? (sim/não): ")

if feriado == "sim" or folga == "sim":
    print("Você pode descansar hoje!")
else:
    print("Dia normal de trabalho.")

Verificamos se uma pessoa tem direito a descansar hoje, também com duas verificações:

O or funciona verificando se hoje é feriado ou se é dia de folga. Basta uma dessas afirmações ser verdadeira para cairmos no primeiro desvio condicional, mostrando a mensagem "Você pode descansar hoje". Se em ambos os casos não houver folga e não for feriado, apenas nessa condição vamos para o else, garantindo que hoje seja um dia normal de trabalho.

Após este vídeo, há uma lista de atividades para praticar o uso de desvios condicionais. Não se esqueça de compartilhar o que aprendeu nas comunidades de desenvolvimento utilizando a hashtag #AprendizadoAlura.

Sobre o curso Praticando Python: condicionais if, elif e else

O curso Praticando Python: condicionais if, elif e else possui 7 minutos de vídeos, em um total de 13 atividades. Gostou? Conheça nossos outros cursos de em Programação, ou leia nossos artigos de Programação.

Matricule-se e comece a estudar com a gente hoje! Conheça outros tópicos abordados durante o curso:

Aprenda acessando integralmente esse e outros cursos, comece hoje!

Conheça os Planos para Empresas