内置函数isinstance和issubclass

Posted roc-atlantis

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了内置函数isinstance和issubclass相关的知识,希望对你有一定的参考价值。

1. isinstance(obj,class) 判断对象obj是不是由class生成的对象。

class Foo:
    pass

obj=Foo()

print(isinstance(obj,Foo))

obj是Foo的生成的对象,返回True。如果不是,则返回False。

d={‘x‘:1} #d=dict({‘x‘:1} #)

print(type(d) is dict)
print(isinstance(d,dict))# 判断对象d是不是类dict生成的

issubclass()

 

2.issubclass(class,parent) 判断class是不是parent的子类

class Parent:
    pass

class Sub(Parent):
    pass

print(issubclass(Sub,Parent))
print(issubclass(Parent,object)) # 也可以用来判断parent是否继承了object

  

 

以上是关于内置函数isinstance和issubclass的主要内容,如果未能解决你的问题,请参考以下文章

内置函数isinstance和issubclass介绍和异常处理讲解

issubclass和isinstance,反射,内置方法

17 Apr 18 内置函数(isinstance,issubclass)反射 __str__ __del__ __call__ 元类

isinstance,issubclass,内置函数__str__和__repr__,__format__

类的判断函数:issubclass,type,isinstance

OOP 内置函数