isinstance()
判断对象所属类型,包括继承关系
class A: pass class B(A): pass b=B() print(isinstance(b,B)) print(isinstance(b,A)) True True
class A(str): pass a=A("asd") print(a) print(isinstance("asd",str)) print(type(a) is str) asd True False
type:子类的对象,他的结果就是子类.不包含继承关系,只管一层
isinstance:包含所有的继承关系.
issubclass()
判断类与类之间的继承关系
class A: pass class B(A): pass print(issubclass(B,A)) print(issubclass(A,B)) True False