issubclass、callable、isinstance和type的区别
issubclass()方法用于判断第一个参数是否是第二个参数的子子孙孙类。
callable()判断对象是否可调用,返回True不一定代表可调用,但是返回False一定不能调用。
type可以获取一个对象的类型,isinstance可以判断一个对象是否是某个类型。但是最大的区别是:
isinstance会认为子类是一种父类类型
class BaseCls():
pass
class TestCls(BaseCls):
def __init__(self):
pass
print(isinstance(TestCls(), BaseCls))
print(type(TestCls())==BaseCls)
print(type(TestCls())==TestCls)

浙公网安备 33010602011771号