python的isinstance()、issubclass()的使用
python的isinstance用于判断一个对象是一个类的实例还是它的子类的实例。
1 class Animal: 2 pass 3 4 5 class Cat(Animal): 6 pass 7 8 9 class Dog(Animal): 10 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
python的issubclass用于判断class是另一个类的派生类还是同一个类。
if __name__ == '__main__': cat = Cat() print(issubclass(Cat, Cat)) # True print(issubclass(Cat, Animal)) # True print(issubclass(Cat, Dog)) # False