Python内置函数isinstance
- IT业界
- 2025-09-07 22:18:02

isinstance() 是 Python 内置函数,用于检查一个对象是否是指定类或类型的实例。它还可以用于检查对象是否属于某个类或其子类,或者是否在某个元组中的类型之一。
语法 isinstance(object, classinfo) object: 要检查的对象。classinfo: 可以是一个类、类型,或者由类/类型组成的元组。 返回值 如果 object 是 classinfo 的实例或其子类的实例,返回 True。否则返回 False。 示例 1. 检查对象是否是某个类的实例 class MyClass: pass obj = MyClass() print(isinstance(obj, MyClass)) # 输出: True print(isinstance(obj, str)) # 输出: False 2. 检查对象是否是多个类型之一 value = 42 print(isinstance(value, (int, float))) # 输出: True print(isinstance(value, (str, list))) # 输出: False 3. 检查对象是否是内置类型的实例 num = 3.14 text = "Hello" print(isinstance(num, float)) # 输出: True print(isinstance(text, str)) # 输出: True 4. 检查对象是否是子类的实例 class Parent: pass class Child(Parent): pass obj = Child() print(isinstance(obj, Parent)) # 输出: True print(isinstance(obj, Child)) # 输出: True 注意事项 isinstance() 会考虑继承关系。如果对象是子类的实例,检查父类也会返回 True。与 type() 不同,isinstance() 更灵活,因为它支持继承和元组类型检查。 isinstance() 与 type() 的区别 class Parent: pass class Child(Parent): pass obj = Child() print(isinstance(obj, Parent)) # 输出: True print(type(obj) == Parent) # 输出: False isinstance() 会考虑继承关系,而 type() 只检查对象的直接类型。 总结isinstance() 是 Python 中用于类型检查的常用工具,特别适合需要处理继承关系或多类型检查的场景。
Python内置函数isinstance由讯客互联IT业界栏目发布,感谢您对讯客互联的认可,以及对我们原创作品以及文章的青睐,非常欢迎各位朋友分享到个人网站或者朋友圈,但转载请说明文章出处“Python内置函数isinstance”