面向对象编程_isinstance,issubclass,type 的用法
1、简单的介绍:
1、issubclass(cls1,cls2) 接收两个参数, cls1 和cls2 传入的类名, 检查cls1是否是 cls2 的子孙类 返回布尔值
2、type(object) 接收一个参数,传入一个对象 ,返回这个对象的所属类 ,只会返回所属类,不会返回其父类
3、issubclass(cls1,cls2) 接收两个参数cls1 和cls2 ,传入的类名,检查 cls1 是否是 cls2 的子孙类 返回布尔值
class a: pass class b(a): pass class c(b): pass ''' issubclass(cls1,cls2) 接收两个参数cls1 和cls2 ,传入的类名,检查 cls1 是否是 cls2 的子孙类 返回布尔值 ''' # c类是否是a类的子类 print(issubclass(c,a)) # c类是否是b类的子类 print(issubclass(c,b)) ''' type(object) 接收一个参数,传入一个对象 ,返回这个对象的所属类 ,只会返回所属类,不会返回其父类 ''' a1 = a() b1 = b() c1 = c() print(type(a1)) print(type(b1)) ''' issubclass(cls1,cls2) 接收两个参数, cls1 和cls2 传入的类名, 检查cls1是否是 cls2 的子孙类 返回布尔值 ''' # 子类或者子孙类的对象 将会返回True print(isinstance(a1,a)) print(isinstance(b1,b)) print(isinstance(c1,a)) print(isinstance(c1,b)) # 反过来则不行 print(isinstance(a1,c))

浙公网安备 33010602011771号