Python callable()内置函数 --检查一个对象是否可调用

函数 callable() 返回 True 时不一定可调用,但返回 False 肯定不可调用。 是可调用的(调用类将返回一个新的实例),如果实例所属的类有 __call__() 方法,则它就是可调用的

格式及参数

1
callable(object)

object:一个对象,可以是整数、字符串、函数、类

参考资料

实例(python3.8.8)

整数

1
2
3
4
5
6
int = 1314
print(callable(int))

''' 输出
False
'''

字符串

1
2
3
4
5
6
str = '雨园博客'
print(callable(str))

''' 输出
False
'''

函数

1
2
3
4
5
6
7
8
9
10
def yu():
return '雨园博客'

print(callable(yu))
print(callable(yu()))

''' 输出
True
False
'''

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
class yu11():

def yuan(self):
return '雨园博客'

print(callable(yu11)) # 类是可调用的
print(callable(yu11())) # 但类实例化后无法调用

''' 输出
True
False
'''


class yu22():

def yuan(self):
return '雨园博客'

def __call__(self):
return 1314

print(callable(yu22)) # 类是可调用的
print(callable(yu22())) # 因为类有__call__方法,类实例化后可调用


''' 输出
True
True
'''