isinstance()
isinstance(object, classinfo) 是一个 Python 内置函数,用于判断一个对象 (object) 是否是某个类或其子类的实例,或者是否属于 classinfo 参数指定的类型或元组中的一种类型。它返回 True 或 False,并且会考虑继承关系,这使得它在处理多态和确保数据类型时非常有用。
函数原型:
isinstance(object, classinfo)
object:需要检查的实例对象。
classinfo:一个类型、一个由类型组成的元组,或者一个类。
工作原理:
如果 object 是 classinfo 类型或其子类的实例,则返回 True。
如果 classinfo 是一个元组,则只要 object 是元组中任意一个类型的实例或其子类,就返回 True。
与 type() 的区别:
isinstance() 考虑继承关系,它会将子类视为父类类型的一种。
type() 则不考虑继承关系,只检查对象的精确类型。
程序示例: