O que são os operadores 'and' e 'or'?
Ocasionalmente, você pode querer combinar expressões de teste para avaliar várias condições em uma instrução if
, elif
ou else
. Nesse caso, você usaria os operadores boolianos and
e or
.
O operador or
Você pode conectar duas expressões boolianas ou de teste usando o operador booliano or
. Para que a expressão inteira seja avaliada como True
, pelo menos uma das subexpressões deve ser verdadeira. Se nenhuma das subexpressões for verdadeira, a expressão inteira será avaliada como False
. Por exemplo, na seguinte expressão, a expressão de teste inteira é avaliada como True
, porque uma das condições nas subexpressões foi atendida:
a = 23
b = 34
if a == 34 or b == 34:
print(a + b)
Se ambas as subexpressões forem verdadeiras, a expressão de teste inteira também será avaliada como True
.
Uma expressão booliana que o usa or
tem a seguinte sintaxe:
sub-expression1 or sub-expression2
O operador and
Você também pode conectar duas expressões de teste usando o operador booliano and
. As duas condições na expressão de teste devem ser verdadeiras para que a expressão de teste inteira seja avaliada como True
. Em qualquer outro caso, a expressão de teste será avaliada como False
. No seguinte exemplo, a expressão de teste inteira é avaliada como False
, porque apenas uma das condições nas subexpressões é verdadeira:
a = 23
b = 34
if a == 34 and b == 34:
print (a + b)
Uma expressão Booliana que usa and
tem a seguinte sintaxe:
sub-expression1 and sub-expression2
A diferença entre and
e or
Para realçar a diferença entre os dois operadores boolianos, você pode usar uma tabela da verdade. A tabela da verdade mostra como a expressão de teste inteira será avaliada com base nas duas subexpressões envolvidas.
Esta é a tabela da verdade para and
:
subexpression1 |
Operador | subexpression2 |
Resultado |
---|---|---|---|
True |
and |
True |
True |
True |
and |
False |
False |
False |
and |
True |
False |
False |
and |
False |
False |
Esta é a tabela da verdade para or
:
subexpression1 |
Operador | subexpression2 |
Resultado |
---|---|---|---|
True |
or |
True |
True |
True |
or |
False |
True |
False |
or |
True |
True |
False |
or |
False |
False |