了解Python中的isinstance()函数


Python 中的isinstance() 函式可以用来检查一个物件是否为某个类别的实例,或是否为一个超类别的实例。它的语法如下:

isinstance(object, classinfo)

其中,object 是要检查的物件,classinfo 则是要检查的类别或超类别。如果object 是classinfo 的实例,或是classinfo 的超类别的实例,则isinstance() 函式会传回True,否则传回False。

举个例子来说,假设我们有一个类别叫做Animal,它有一个子类别叫做Dog,那么我们可以用isinstance() 函式来检查一个物件是否为Animal 或Dog 的实例:

class Animal:
    pass

class Dog(Animal):
    pass

dog = Dog()

print(isinstance(dog, Animal)) # True
print(isinstance(dog, Dog)) # True

可以看到,dog 是Animal 的实例,也是Dog 的实例,所以isinstance() 函式传回True。

另外,isinstance() 函式也可以接受多个类别作为参数,例如:

print(isinstance(dog, (Animal, Dog))) # True

这个例子中,isinstance() 函式会检查dog 是否为Animal 或Dog 的实例,由于dog 是Dog 的实例,所以isinstance() 函式会传回True。

总结来说,Python 中的isinstance() 函式可以用来检查一个物件是否为某个类别的实例,或是否为一个超类别的实例,它可以接受多个类别作为参数,只要物件是其中任何一个类别的实例,isinstance() 函式就会传回True。

本文链接地址:https://www.wwsww.cn/jishu/25031.html
郑重声明:本文版权归原作者所有,转载文章仅为传播更多信息之目的,如作者信息标记有误,请第一时间联系我们修改或删除,多谢。