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。
原创文章,作者:惊蛰财经,如若转载,请注明出处:http://www.xmlm.net/jibi/31345.html