Resumo : neste tutorial, você aprenderá sobre objetos que podem ser chamados em Python e como usar a callable
função para verificar se um objeto pode ser chamado.
Introdução aos chamáveis Python
Quando você pode chamar um objeto usando o ()
operador, esse objeto pode ser chamado:
object()
Linguagem de código: Python ( python )
Por exemplo, funções e métodos podem ser chamados. Em Python, muitos outros objetos também podem ser chamados.
Um callable sempre retorna um valor.
Para verificar se um objeto pode ser chamado, você pode usar a função integrada callable
:
callable(object)
Linguagem de código: Python ( python )
A callable
função aceita um objeto. Ele retorna True
se o objeto puder ser chamado. Caso contrário, ele retorna False
.
Exemplos de funções que podem ser chamadas em Python
A seguir ilustramos os vários tipos de objetos que podem ser chamados em Python.
1) funções integradas
Todas as funções integradas podem ser chamadas. Por exemplo, print
, len
, mesmo callable
.
print(callable(print))
print(callable(len))
print(callable(callable))
Linguagem de código: Python ( python )
Saída:
True
True
True
Linguagem de código: PHP ( php )
2) Funções definidas pelo usuário
Todas as funções definidas pelo usuário criadas usando expressões def
ou lambda
podem ser chamadas. Por exemplo:
def add(a, b):
return a + b
print(callable(add)) # True
print(callable(lambda x: x*x)) # True
Linguagem de código: Python ( python )
Saída:
True
True
Linguagem de código: PHP ( php )
3) métodos integrados
Os métodos integrados, como a_str.upper
, a_list.append
podem ser chamados. Por exemplo:
str = 'Python Callable'
print(callable(str.upper)) # True
Linguagem de código: Python ( python )
Saída:
True
Linguagem de código: PHP ( php )
4) Aulas
Todas as classes podem ser chamadas. Ao chamar uma classe, você obtém uma nova instância da classe. Por exemplo:
class Counter:
def __init__(self, start=1):
self.count = start
def increase(self):
self.count += 1
def value(self):
return self.count
Linguagem de código: Python ( python )
5) Métodos
Métodos são funções vinculadas a um objeto, portanto, também podem ser chamados. Por exemplo:
print(callable(Counter.increase)) # True
Linguagem de código: Python ( python )
Saída:
True
Linguagem de código: PHP ( php )
6) Instâncias de uma classe
Se uma classe implementa o __call__
método, todas as instâncias da classe podem ser chamadas:
class Counter:
def __init__(self, start=1):
self.count = start
def increase(self):
self.count += 1
def value(self):
return self.count
def __call__(self):
self.increase()
counter = Counter()
counter()
print(callable(counter)) # True
Linguagem de código: Python ( python )
Saída:
True
Linguagem de código: PHP ( php )
Resumo
- Um objeto pode ser chamado quando pode ser chamado usando o
()
operador. - Use a
callable
função integrada do Python para verificar se um objeto pode ser chamado ou não.