Estruturas de Condição Simples (If)
Você já deve saber que o computador executa suas instruções (códigos) de cima para baixo e da esquerda para a direita (O modo como lemos). Porém as estruturas condicionais servem justamente para alterar o fluxo de execução, avaliando condições para determinar se algum bloco de código será executado ou não. As condições são as verificações, ou seja, o programa verifica se a expressão é verdadeira (True) ou falsa (False).
Sintaxe básica do if
if condição:
# bloco de códigos
Exemplo 1
if 5 > 10:
print('5 é maior que 10')
print('Fim')
Fim
Antes de mais nada, uma coisa muitíssima importante é observar os espaços antes da instrução print(), dentro do bloco de códigos do if. Consegue observar que há alguns espaços? O nome disso é indentação, e isso é obrigatório para que o código funcione. Sempre que houver 2 pontos(:) então isso significa que a próxima linha deverá estar indentada (com 4 espaços). Isso sinaliza que aquele bloco de código está dentro da estrutura do if.
Exemplo 2
if 10 > 1:
print('10 é maior que 1')
print('Fim')
10 é maior que 1 Fim
Exemplo com variável
chovendo = True
if chovendo == True:
print('Está chovendo!')
print('Fim')
Está chovendo! Fim
Exemplo com condição falsa
pets = False
if pets == True:
print("Você tem pets!")
print("Fim do programa")
Fim do programa
Estruturas de Condição Compostas (If-Else)
As condicionais compostas permitem que o programa escolha entre um bloco de código ou outro. Na estrutura composta, funciona da seguinte forma:
luz = True
if luz == True:
print('A luz está acessa')
else:
print('A luz está apagada')
A luz está acessa
Exemplo com operadores de comparação
animais = 5
if animais > 3:
print('Você não pode entrar com mais de 5 animais aqui!')
else:
print('Pode entrar!')
Você não pode entrar com mais de 5 animais aqui!
Exemplo com condição falsa
altura = 1.59
if altura > 1.65:
print('Pode entrar na montanha russa')
else:
print('Altura insuficiente')
Altura insuficiente
Exemplo com strings
nome = 'Henrique'
if nome == 'Admin':
print('Bem vindo, Admin!')
else:
print('Bem vindo, usuário')
Bem vindo, usuário
Estruturas de Condição Encadeada (If-Elif-Else)
Esta estrutura permite que o programa verifique quantas condições forem necessárias. Diferente da condição composta que verifica apenas duas condições.
Exemplo com idade
idade = 23
if idade <= 18:
print('Você é um Jovem')
elif idade <= 60:
print('Você é um adulto')
else:
print('Você é um idoso')
Você é um adulto
Exemplo com semáforo
semaforo = 'vermelho'
if semaforo == 'verde':
print('Acelerar!')
elif semaforo == 'amarelo':
print('Esperar!')
elif semaforo == 'vermelho':
print('Parar!')
else:
print('Cor desconhecida!')
Parar!
Tópicos Avançados
Quando você tem uma condição verdadeira, você pode simplesmente omitir a parte que compara:
# Forma completa
if True == True:
print('Isso é verdadeiro')
# Forma simplificada
if True:
print('Isso é verdadeiro')
Isso é verdadeiro Isso é verdadeiro
Operador Ternário
Uma estrutura condicional como o if
, elif
e else
utiliza várias linhas de código. Para simplificar, foi criado o operador ternário, que permite realizar a mesma verificação em apenas uma linha! Sua sintaxe é diferente de uma estrutura condicional tradicional com if
. Vamos ver como funciona:
Sintaxe do Operador Ternário
valor_verdadeiro if condicao else valor_falso
A sintaxe funciona assim: primeiro, especificamos o valor_verdadeiro
que será retornado se a condicao
for True
. Após o if
, colocamos a condição a ser avaliada. Por fim, após o else
, indicamos o valor_falso
que será retornado se a condição for False
.
Exemplo 1: Operador Ternário Simples
print('Verdadeiro' if True else 'Falso')
Verdadeiro
Neste exemplo, como a condição é True
, o programa imprime 'Verdadeiro'
. Se a condição fosse False
, ele imprimiria 'Falso'
.
Exemplo 2: Comparação com Estrutura Condicional
# Estrutura condicional tradicional
pet = True
if pet:
print('Possui um pet')
else:
print('Não possui um pet')
# Operador ternário
pet = True
print('Possui um pet' if pet else 'Não possui um pet')
Possui um pet Possui um pet
No exemplo acima, a variável pet
é definida como True
. Tanto a estrutura condicional tradicional quanto o operador ternário produzem a mesma saída: 'Possui um pet'
. Note que no operador ternário, como pet
já é um valor booleano, podemos simplificar a condição omitindo pet == True
.
Observação
O operador ternário é ideal para verificações simples com apenas duas condições, pois utiliza apenas if
e else
. Embora seja possível simular um elif
com ternários aninhados, a sintaxe torna-se mais complexa e menos legível, sendo recomendado usar estruturas if-elif-else
nesses casos.