📌  相关文章
📜  Python callable()

📅  最后修改于: 2020-09-20 03:52:41             🧑  作者: Mango

如果传递的对象显示为可调用,则callable()方法将返回True。如果不是,则返回False。

callable()的语法为:

callable(object)

callable()参数

callable()方法采用单个参数object .

从callable()返回值

callable()方法返回:

  1. True如果对象看起来可调用
  2. False如果对象不可调用。

重要的是要记住,即使callable()True ,对对象的调用仍可能失败。

但是,如果callable()返回False ,则对该对象的调用肯定会失败。

示例1:callable()如何工作?

x = 5
print(callable(x))

def testFunction():
  print("Test")

y = testFunction
print(callable(y))

输出

False
True

在此,对象x是不可调用的。并且,对象y似乎是可调用的(但可能不是可调用的)。

示例2:可调用对象

class Foo:
  def __call__(self):
    print('Print Something')

print(callable(Foo))

输出

True

Foo类的实例似乎可以调用(在这种情况下可以调用)。

class Foo:
  def __call__(self):
    print('Print Something')

InstanceOfFoo = Foo()

# Prints 'Print Something'
InstanceOfFoo()

示例3:对象似乎可以调用但不能调用。

class Foo:
  def printLine(self):
    print('Print Something')

print(callable(Foo))

输出

True

Foo类的实例似乎可以调用,但是不能调用。以下代码将引发错误。

class Foo:
  def printLine(self):
    print('Print Something')

print(callable(Foo))

InstanceOfFoo = Foo()
# Raises an Error
# 'Foo' object is not callable
InstanceOfFoo()

输出

True
Traceback (most recent call last):
File "", line 10, in 
TypeError: 'Foo' object is not callable