isinstance的用法
时间: 2024-01-19 07:03:56 浏览: 70
`isinstance(object, classinfo)` 是一个 Python 内建函数,用于检查一个对象是否是一个特定类的实例。其中,`object` 表示要检查的对象,`classinfo` 表示要检查的类。
`isinstance()` 的返回值是一个布尔值,如果 `object` 是 `classinfo` 的一个实例或者是 `classinfo` 的子类的一个实例,则返回 `True`,否则返回 `False`。
以下是一个使用 `isinstance()` 的示例:
```python
class Animal:
def __init__(self, name):
self.name = name
class Cat(Animal):
def meow(self):
print("Meow!")
class Dog(Animal):
def bark(self):
print("Woof!")
cat = Cat("Tom")
dog = Dog("Spike")
print(isinstance(cat, Animal)) # True
print(isinstance(dog, Animal)) # True
print(isinstance(cat, Dog)) # False
print(isinstance(dog, Cat)) # False
```
在上面的示例中,我们定义了一个 `Animal` 类和两个子类 `Cat` 和 `Dog`。然后,我们创建了一个名为 `cat` 的 `Cat` 类型的对象和一个名为 `dog` 的 `Dog` 类型的对象。最后,我们使用 `isinstance()` 函数检查这些对象是否是 `Animal` 类型的实例,以及是否是 `Cat` 类型和 `Dog` 类型的实例,从而输出了对应的结果。
阅读全文