python callable()
函数用于判断一个对象是否可调用。它是python的内置函数。
如果一个对象可调用则返回True,否则返回False。
语法
语法如下:callable(object)
参数
- object:指定要判断是否调用的对象。
返回值
返回布尔值,True或者False。
版本
该函数在python2.x版本中都可用。但是在python3.0版本中被移除,而在python3.2以后版本中被重新添加。
程序示例
介绍一个例子了解python callable()函数的使用方法。
#!/usr/bin/python
# coding=utf-8
def sum(a, b):
print(a+b)
class Person:
def __call__(self, *args, **kwargs):
print("定义了__call__()方法")
class Animal:
def say(self):
print("say")
print('数字:', callable(123)) # False
print('字符串:', callable('yxjc123')) # False
print('列表:', callable([1,2,3])) # False
print('元组:', callable((1,2,3))) # False
print('方法:', callable(sum)) # True
print('类:', callable(Person)) # True
p = Person() # person类定义了__call__方法所以返回True
print('对象person:', callable(p)) # True
a = Animal() # 没有定义__call__方法所以返回False
print('对象animal:', callable(a)) # False
程序运行结果:
数字: False
字符串: False
列表: False
元组: False
方法: True
类: True
对象person: True
对象animal: False
字符串: False
列表: False
元组: False
方法: True
类: True
对象person: True
对象animal: False
从结果中可以看出:
- 数值、字符串、列表对象、元组对象、字典对象等是不可调用的
- 类中未实现__call__()方法,类的实例也是不能调用的。