Conteúdo do Curso
Introdução ao Python
3. Declarações Condicionais
Introdução ao Python
Combinando Condições
Na lógica booleana, dois operadores fundamentais são OR e AND. O que eles representam?
O operador OR verifica se alguma das condições é verdadeira e devolve True
em caso afirmativo; caso contrário, devolve False
.
O operador AND assegura que ambas as condições são verdadeiras antes de devolver True
. Caso contrário, devolve False
.
Em Python, para combinar condições, use os operadores and
e or
(sempre em minúsculas). Por exemplo:
condition1 and condition2
retornaTrue
somente quando ambas as condições sãoTrue
.condition1 or condition2
retornaTrue
se pelo menos uma condição forTrue
.
Nota
Também é possível encadear mais de duas condições utilizando esses operadores. Utilize parênteses para esclarecer a ordem das operações.
A título de exemplo, considere as seguintes condições:
- Se
2
excede1
e se"bbb"
não é igual a"aaa"
. - Se o caractere com índice
2
na string"my string"
é"y"
ou"s"
.
Descrição do código
2 > 1 and "bbb" != "aaa"
envolve duas condições conectadas pelo operador and
. A primeira condição 2 > 1
é verdadeira porque 2 é maior que 1. A segunda condição "bbb" != "aaa"
também é verdadeira porque as strings "bbb" e "aaa" não são iguais. Como ambas as condições são verdadeiras e estão conectadas por and
, toda a expressão é avaliada como verdadeira.Na segunda linha,
"my string"[2] == "y" or "my string"[2] == "s"
verifica duas condições conectadas pelo operador or
. A expressão "my string"[2]
refere-se ao terceiro caractere da string "my string", que é " ". A primeira condição "my string"[2] == "y"
é falsa. A segunda condição "my string"[2] == "s"
é falsa e, como ambas as condições são falsas e estão conectadas por or
, a expressão geral é avaliada como falsa.
Como devemos interpretar os resultados? O print()
inicial emite uma resposta True
pois ambos 2 > 1
e "bbb" != "aaa"
são verdadeiros. O seguinte print()
produz False
porque o caractere no índice 2
não é nem 'y'
nem 's'
(é na verdade um espaço).
Nota
Se você deseja inverter um valor booleano, use o operador
not
. Por exemplo,not 1 == 1
resulta emFalse
porque1 == 1
éTrue
, e nós negamos isso paraFalse
.
Descrição do código
print(0 > 10 and 5 > 2)
: Imprime False
porque, embora 5 > 2
é verdadeiro, 0 > 10
é falso. O operador and
exige que ambas as condições sejam verdadeiras, mas como uma é falsa, a expressão geral é falsa.print(2*2 == 5 or 1+1 != 3)
: Imprime True
porque 2*2 == 5
é falso, mas 1+1 != 3
é verdadeiro. O operador or
requer apenas que uma das condições seja verdadeira para que a expressão geral seja verdadeira.
Tudo estava claro?
Conteúdo do Curso
Introdução ao Python
3. Declarações Condicionais
Introdução ao Python
Combinando Condições
Na lógica booleana, dois operadores fundamentais são OR e AND. O que eles representam?
O operador OR verifica se alguma das condições é verdadeira e devolve True
em caso afirmativo; caso contrário, devolve False
.
O operador AND assegura que ambas as condições são verdadeiras antes de devolver True
. Caso contrário, devolve False
.
Em Python, para combinar condições, use os operadores and
e or
(sempre em minúsculas). Por exemplo:
condition1 and condition2
retornaTrue
somente quando ambas as condições sãoTrue
.condition1 or condition2
retornaTrue
se pelo menos uma condição forTrue
.
Nota
Também é possível encadear mais de duas condições utilizando esses operadores. Utilize parênteses para esclarecer a ordem das operações.
A título de exemplo, considere as seguintes condições:
- Se
2
excede1
e se"bbb"
não é igual a"aaa"
. - Se o caractere com índice
2
na string"my string"
é"y"
ou"s"
.
Descrição do código
2 > 1 and "bbb" != "aaa"
envolve duas condições conectadas pelo operador and
. A primeira condição 2 > 1
é verdadeira porque 2 é maior que 1. A segunda condição "bbb" != "aaa"
também é verdadeira porque as strings "bbb" e "aaa" não são iguais. Como ambas as condições são verdadeiras e estão conectadas por and
, toda a expressão é avaliada como verdadeira.Na segunda linha,
"my string"[2] == "y" or "my string"[2] == "s"
verifica duas condições conectadas pelo operador or
. A expressão "my string"[2]
refere-se ao terceiro caractere da string "my string", que é " ". A primeira condição "my string"[2] == "y"
é falsa. A segunda condição "my string"[2] == "s"
é falsa e, como ambas as condições são falsas e estão conectadas por or
, a expressão geral é avaliada como falsa.
Como devemos interpretar os resultados? O print()
inicial emite uma resposta True
pois ambos 2 > 1
e "bbb" != "aaa"
são verdadeiros. O seguinte print()
produz False
porque o caractere no índice 2
não é nem 'y'
nem 's'
(é na verdade um espaço).
Nota
Se você deseja inverter um valor booleano, use o operador
not
. Por exemplo,not 1 == 1
resulta emFalse
porque1 == 1
éTrue
, e nós negamos isso paraFalse
.
Descrição do código
print(0 > 10 and 5 > 2)
: Imprime False
porque, embora 5 > 2
é verdadeiro, 0 > 10
é falso. O operador and
exige que ambas as condições sejam verdadeiras, mas como uma é falsa, a expressão geral é falsa.print(2*2 == 5 or 1+1 != 3)
: Imprime True
porque 2*2 == 5
é falso, mas 1+1 != 3
é verdadeiro. O operador or
requer apenas que uma das condições seja verdadeira para que a expressão geral seja verdadeira.
Tudo estava claro?