Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Operadores Lógicos | Instrução if no Python
Estruturas Condicionais no Python
course content

Conteúdo do Curso

Estruturas Condicionais no Python

Estruturas Condicionais no Python

1. Instrução if no Python
2. Instrução if-else no Python
3. Instrução if-elif-else no Python
4. Operador ternário no Python

bookOperadores 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:

123456
is_adult = True has_license = True if is_adult: if has_license: print("You can drive car")
copy

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:

12345
is_adult = True has_license = True if is_adult and has_license: print("You can drive car")
copy

A linguagem Python tem 3 operadores lógicos:

  1. and - condition_1 and condition_2 - funciona apenas se ambas as condições forem True.
  2. or - condition_1 or condition_2 - funciona se pelo menos uma das duas condições especificadas for True.
  3. 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.

12345678
# 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')
copy

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.

12345678
# 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')
copy

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.

12345678
# 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')
copy

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!

12345678
# 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')
copy

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!

Tudo estava claro?

Como podemos melhorá-lo?

Obrigado pelo seu feedback!

Seção 1. Capítulo 5
some-alt