Conteúdo do Curso
Estruturas Condicionais no Python
Estruturas Condicionais no Python
Operadores Lógicos
Anteriormente, exploramos situações envolvendo uma única condição na instrução if. Agora, vamos nos aprofundar em cenários onde precisamos avaliar múltiplas condições.
Uma abordagem é usar instruções if
aninhadas, como demonstrado no exemplo:
Exemplo 1:
is_adult = True has_license = True if is_adult: if has_license: print("You can drive car")
No entanto, depender excessivamente de condições if
aninhadas não é considerado uma boa prática. Um desenvolvedor experiente preferiria usar operadores lógicos em vez de aninhar condições.
Exemplo 2:
is_adult = True has_license = True if is_adult and has_license: print("You can drive car")
A linguagem Python tem 3 operadores lógicos:
and
- condition_1 and condition_2 - funciona apenas se ambas as condições foremTrue
.or
- condition_1 or condition_2 - funciona se pelo menos uma das duas condições especificadas forTrue
.not
-not condition
é aplicado a uma única condição (não duas como acima) e inverte seu valor.
Na sintaxe Python, cada valor "vazio" é equivalente a False
, e qualquer valor "não-vazio" é equivalente a True
.
Exemplo 3:
Vamos prosseguir examinando declarações condicionais com múltiplas condições. Imagine que você fez exames em três matérias e obteve os seguintes resultados: math_exam = 95
, english_exam = 90
, programming_exam = 100
. Você decidiu se candidatar a três diferentes universidades, cada uma com seus próprios requisitos de admissão. Vamos explorar esses requisitos.
Para entrar na primeira universidade, você deve ter uma pontuação maior ou igual a 90 em todas as três matérias simultaneamente. Vamos ver se você atende aos critérios desta universidade.
# Your scores math_exam = 95 english_exam = 90 programming_exam = 100 # Checking whether you will pass to the first university if math_exam >= 90 and english_exam >= 90 and programming_exam >= 90: print('Congratulations! You are enrolled in our university')
Como podemos ver, suas notas em todos os exames são maiores ou iguais a 90, portanto, nossa instrução if funcionou.
Depois, avance para a próxima universidade. Aqui a condição é diferente, já que esta é a melhor universidade da sua cidade, suas notas devem ser maiores ou iguais a 95.
# Your scores math_exam = 95 english_exam = 90 programming_exam = 100 # Checking whether you will pass to the second university if math_exam >= 95 and english_exam >= 95 and programming_exam >= 95: print('Congratulations! You are enrolled in our university')
Constatamos que a nossa condição não é satisfeita, uma vez que temos dois objetos que satisfazem a condição, mas o terceiro objeto, ou seja, english_exam = 90
, é inferior a 95. Portanto, não obtemos nenhum resultado e a nossa instrução if não é executada.
Passando para a próxima universidade. Aqui a condição é bastante simples. Para ser aprovado aqui, é necessário ter pelo menos uma disciplina que tenha 100 pontos.
É evidente que, para este caso, precisamos utilizar o operador or.
# Your scores math_exam = 95 english_exam = 90 programming_exam = 100 # Checking whether you will pass to the third university if math_exam == 100 or english_exam == 100 or programming_exam == 100: print('Congratulations! You are enrolled in our university')
Como podemos ver, temos uma matéria com a nota 100. É importante notar que, para o operador or
, basta que apenas uma condição seja True
.
Vale lembrar que, se nenhuma das condições for True
, a instrução if
não será executada e você não atenderá aos critérios.
Agora, é hora de praticar!
# Your scores math_exam = 95 english_exam = 90 programming_exam = 100 # Checking whether you will pass to the third university if math_exam == 100 or english_exam == 100 or programming_exam == 100: print('Congratulations! You are enrolled in our university')
Como podemos ver, ainda temos um assunto com a pontuação de 100. É importante notar que para o operador or
, basta que apenas uma condição seja True
.
Vale a pena lembrar que, se nenhuma das condições for True
, a instrução if
não será executada, e você não atenderá aos critérios.
Agora, é hora de praticar!
Obrigado pelo seu feedback!