isinstance用于判断一个对象是一个类的实例还是它的子类的实例
class Animal:
pass
class Cat(Animal):
pass
class Dog(Animal):
pass
if name == ‘main’:
cat = Cat()
# 判断对象是否为一个类的实例
print(isinstance(cat, Cat)) # True
print(isinstance(cat, Animal)) # True
print(isinstance(cat, Dog)) # False
判断数据类型
aa = 123
print(isinstance(aa,int)) # True
print(isinstance(aa,str)) # False
issubclass用于判断class是另一个类的派生类还是同一个类。
if name == ‘main’:
cat = Cat()
print(issubclass(Cat, Cat)) # True
print(issubclass(Cat, Animal)) # True
print(issubclass(Cat, Dog)) # False