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.
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
.
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".
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".
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.
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.
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.
Operador | Conceito | Exemplo |
---|---|---|
> | Verifica se um valor é maior que outro | x > 10 |
< | Verifica se um valor é menor que outro | x < 10 |
== | Verifica se um valor é igual a outro | x == 10 |
!= | Verifica se um valor é diferente de outro | x != 10 |
>= | Verifica se um valor é maior ou igual a outro | x >= 10 |
<= | Verifica se um valor é menor ou igual a outro | x <= 10 |
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 1 | Condição 2 | Resultado |
---|---|---|
Verdadeiro | Verdadeiro | Verdadeiro |
Verdadeiro | Falso | Falso |
Falso | Verdadeiro | Falso |
Falso | Falso | Falso |
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 1 | Condição 2 | Resultado |
---|---|---|
Verdadeiro | Verdadeiro | Verdadeiro |
Verdadeiro | Falso | Verdadeiro |
Falso | Verdadeiro | Verdadeiro |
Falso | Falso | Falso |
Para lembrar:
- and: retorna verdadeiro apenas se todas as condições forem verdadeiras.
- or: retorna verdadeiro se pelo menos uma das condições for verdadeira.
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.
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:
Impulsione a sua carreira com os melhores cursos e faça parte da maior comunidade tech.
1 ano de Alura
Assine o PLUS e garanta:
Formações com mais de 1500 cursos atualizados e novos lançamentos semanais, em Programação, Inteligência Artificial, Front-end, UX & Design, Data Science, Mobile, DevOps e Inovação & Gestão.
A cada curso ou formação concluído, um novo certificado para turbinar seu currículo e LinkedIn.
No Discord, você tem acesso a eventos exclusivos, grupos de estudos e mentorias com especialistas de diferentes áreas.
Faça parte da maior comunidade Dev do país e crie conexões com mais de 120 mil pessoas no Discord.
Acesso ilimitado ao catálogo de Imersões da Alura para praticar conhecimentos em diferentes áreas.
Explore um universo de possibilidades na palma da sua mão. Baixe as aulas para assistir offline, onde e quando quiser.
Acelere o seu aprendizado com a IA da Alura e prepare-se para o mercado internacional.
1 ano de Alura
Todos os benefícios do PLUS e mais vantagens exclusivas:
Luri é nossa inteligência artificial que tira dúvidas, dá exemplos práticos, corrige exercícios e ajuda a mergulhar ainda mais durante as aulas. Você pode conversar com a Luri até 100 mensagens por semana.
Aprenda um novo idioma e expanda seus horizontes profissionais. Cursos de Inglês, Espanhol e Inglês para Devs, 100% focado em tecnologia.
Transforme a sua jornada com benefícios exclusivos e evolua ainda mais na sua carreira.
1 ano de Alura
Todos os benefícios do PRO e mais vantagens exclusivas:
Mensagens ilimitadas para estudar com a Luri, a IA da Alura, disponível 24hs para tirar suas dúvidas, dar exemplos práticos, corrigir exercícios e impulsionar seus estudos.
Envie imagens para a Luri e ela te ajuda a solucionar problemas, identificar erros, esclarecer gráficos, analisar design e muito mais.
Escolha os ebooks da Casa do Código, a editora da Alura, que apoiarão a sua jornada de aprendizado para sempre.