欢迎访问宙启技术站
智能推送

如何使用Python的isinstance函数检查对象类型

发布时间:2023-07-02 15:18:49

在Python中,可以使用isinstance()函数检查对象的类型。该函数的语法如下:

isinstance(object, classinfo)

其中,object是要检查类型的对象,classinfo可以是一个类、类型元组、类型集合,或者是一个类型名。它返回一个布尔值,表示object是否为classinfo指定的类型或者是其子类。

下面是一些使用isinstance()函数的示例:

1. 检查对象是否为一个类的实例:

class MyClass:
    pass

obj = MyClass()
print(isinstance(obj, MyClass))  # True
print(isinstance(obj, list))  # False

2. 检查对象是否为多个类中的一个:

class MyClass1:
    pass

class MyClass2:
    pass

obj = MyClass1()
print(isinstance(obj, (MyClass1, MyClass2)))  # True

3. 检查对象的类型是否为某个类的子类:

class MyBaseClass:
    pass

class MyDerivedClass(MyBaseClass):
    pass

obj = MyDerivedClass()
print(isinstance(obj, MyBaseClass))  # True

4. 检查对象是否为集合或元组中的任何一个类型:

numbers = [1, 2, 3]
tup = (1, 2, 3)

print(isinstance(numbers, (list, tuple)))  # True
print(isinstance(tup, (list, tuple)))  # True

5. 检查对象的类型是否为某个类型的子类:

class MyParentType:
    pass

class MyChildType(MyParentType):
    pass

print(isinstance(MyChildType(), MyParentType))  # True

这些都是使用isinstance()函数进行类型检查的一些示例。请注意,isinstance()函数只能用于检查对象的类型,而不能用于检查变量的类型。