一、isinstance(obj, cls)
判断第一个参数是不是第二个参数的对象,返回true或者false
class Foo:
pass
class Bar(Foo):
pass
f=Foo()
print(isinstance(f,Foo))
# 子类对象也是父类中的对象
print(isinstance(Bar(),Foo))
True
True
二、issubclass(sub,super)
判断第一个类是不是第二个类的子类,返回true或者false
class Foo:
pass
class Bar(Foo):
pass
# 当前类的父类
print(Bar.__bases__)
# 是否是第二个的子类
print(issubclass(Bar,Foo))