Resumo : neste tutorial, você aprenderá sobre o or
operador Python e como usá-lo de forma eficaz.
Introdução ao or
operador Python
O or
operador é um operador lógico . Normalmente, você usa o or
operador para combinar duas expressões booleanas e retornar um valor booleano .
O or
operador retorna True
se um dos dois operandos for True
. E retorna False
apenas se ambos os operandos forem False
.
Esta tabela verdade exibe o resultado do or
operador:
x | sim | x ou y |
---|---|---|
Verdadeiro | Verdadeiro | Verdadeiro |
Verdadeiro | Falso | Verdadeiro |
Falso | Verdadeiro | Verdadeiro |
Falso | Falso | Falso |
O exemplo a seguir mostra como usar o or
operador:
is_admin = False
is_editor = True
can_edit = is_admin or is_editor
print(can_edit)
Linguagem de código: PHP ( php )
Saída:
True
Linguagem de código: PHP ( php )
O Python ou operador está em curto-circuito
Ao avaliar uma expressão que envolve o or
operador, o Python às vezes pode determinar o resultado sem avaliar todos os operandos. Isso é chamado de avaliação de curto-circuito ou avaliação preguiçosa.
Por exemplo:
x or y
Se x
for verdade, o or
operador retorna x
. Caso contrário, ele retorna y
.
Em outras palavras, se x
for verdade, o or
operador não precisa avaliar y
. Ele simplesmente retorna x
imediatamente. É por isso que a avaliação é chamada de avaliação preguiçosa ou em curto-circuito.
O or
operador apenas avalia y
e retorna o resultado da avaliação se x
for falso.
Em Python, todo objeto está associado a um valor booleano . E o x
e y
pode ser qualquer objeto.
Isso abre alguns aplicativos úteis do or
operador.
Definindo um valor padrão para uma variável
O or
operador permite definir um valor padrão para uma variável, por exemplo:
var_name = value or default
Linguagem de código: JavaScript ( javascript )
Neste exemplo, se value
for falso, o or
operador retorna o default
.
O exemplo a seguir solicita uma entrada. Se você não inserir nada, o lang
padrão será 'Python'
:
lang = input('Enter your language:') or 'Python'
print(lang)
Linguagem de código: PHP ( php )
O exemplo a seguir define uma função get_data()
que retorna uma lista de números. Ele usa a função integrada min()
para encontrar o elemento mais baixo da lista:
def get_data(args=None):
if args:
return [1, 2, 3]
return []
lowest = min(get_data(args=true))
print(lowest)
Linguagem de código: PHP ( php )
Saída:
1
Ele retornou 1 conforme esperado. No entanto, get_data()
pode retornar uma lista vazia como esta:
lowest = min(get_data())
print(lowest)
Linguagem de código: PHP ( php )
Ele retornou um ValueError
.
Para corrigir isso, você pode usar o or
operador ao chamar a min()
função:
def get_data(args=None):
if args:
return [1, 2, 3]
return []
lowest = min(get_data() or [0])
print(lowest)
Linguagem de código: PHP ( php )
Saída:
0
Neste exemplo, se a função get_data() retornar uma lista vazia, o or
operador tratará seu resultado como um valor falso.
Como o primeiro operando é falso, o or
operador precisa avaliar o segundo operando [0]
. Neste caso, você pode especificar o valor mínimo padrão no segundo operando.