约 1603 字

约 8 分钟

#Python 的内置函数 isinstance

说明:判断是否是某个类型的实例。

#函数说明

def isinstance(obj, classinfo) -> bool:
    '''
    获取输入

    :param obj: 一个对象
    :param classinfo: 一个类型
    :return: 如果 obj 是 classinfo 类型则返回 True,否则返回 False
    '''

说明

判断是否是某个类型的实例。

classinfo 可以是多个类构成的元组或 union 类型,obj 只要是其中一个类的实例即返回 True。

参数

  • obj - 要判断的对象
  • classinfo - 要判断的类

返回值

  • 如果 obj 是 classinfo 或其子类的实例,则返回 True
  • 如果 obj 不是 classinfo 或其子类类的实例,则返回 True

#示例

print(isinstance(233, int))             # True
print(isinstance(233, float))           # False
print(isinstance('233', int))           # False
print(isinstance('233', int|str))       # True,union 类型满足其一
print(isinstance('233', (int, str)))    # True,元组满足其一

class Animal:           # 动物
    pass

class Mammal(Animal):   # 哺乳动物
    pass

class Cat(Mammal):      # 猫
    pass

print(isinstance(Cat(), Cat))           # True,Cat() 是 Cat 的实例
print(isinstance(Cat(), Mammal))        # True,Cat() 是 Mammal 的实例
print(isinstance(Cat(), Animal))        # True,Cat() 是 Animal 的实例
print(isinstance(Mammal(), Cat))        # False,Mammal() 不是 Cat 的实例
print(isinstance(Mammal(), Animal))     # True,Mammal() 是 Animal 的实例

>>> Establishing WebAssembly Runtime.

>>> Standby.

Powered by Shift.

#推荐阅读

更新: 2025/10/25

作者: PlanC

创建: 2025/6/9