As operações lógicas de Python usam and, or e not.
age = 14
height = 1.60
# AND requires BOTH sides to be true
can_ride = (age >= 12) and (height >= 1.50)
print("Can ride the roller coaster? ", can_ride)
cash = True
card = True
# In XOR, if you have both, it returns False.
print("Paid with exactly one method?", cash != card)
# Inverting a truth with NOT
print("Am I out of cash?", not cash)
Exigir duas condições para permitir acesso
Permitir uma entrada pode depender de mais de um dado: ter idade suficiente e possuir ingresso. O operador de conjunção exige que as duas condições sejam verdadeiras; a disjunção aceita ao menos uma. A negação inverte o valor lógico. Para investigar um erro, confira cada comparação separadamente antes de combinar as condições. Não use um texto como substituto de um valor lógico: uma string não vazia pode ser considerada verdadeira mesmo que seu conteúdo diga “não”.
Preserve a indentação dos blocos ao modificar este exemplo em Python.
idade = 18
tem_ingresso = False
if idade >= 18 and tem_ingresso:
print("Acesso permitido")
else:
print("Acesso negado")
Resultado esperado e testes
Execute o exemplo sem fornecer entradas. A saída deve ser:
Acesso negado
Mantenha a idade 18 e altere o ingresso para verdadeiro: o acesso deve ser permitido. Depois teste idade 17 com ingresso: deve ser negado. Liste as quatro combinações entre idade suficiente e ingresso. Como exercício, adicione uma autorização extra e explique com parênteses quais condições precisam valer juntas.
Depois, compare o raciocínio com a versão do mesmo assunto nas outras linguagens do menu.