Python 基础教程

Python 高级教程

Python 相关应用

Python 笔记

Python FAQ

original icon
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://www.knowledgedict.com/tutorial/python-builtin-functions-issubclass.html

python 判断类是否为另一个类的的子类的内置函数 issubclass 详解

Python 内置函数 Python 内置函数


issubclass() 是 Python 内置的一个函数,用于判断一个类是否为另一个类的子类。

函数语法

issubclass(class, classinfo)

参数: 

  • class :要判断的类,即要检查是否为子类的类。
  • classinfo :可以是一个类、一个类型元组或者一个类的元组。如果 classclassinfo 的子类之一,则返回 True ;否则返回 False

示例代码

下面我将通过一些示例代码来详细解释这个函数的用法:

示例 1:基本用法

class Parent:
    pass

class Child(Parent):
    pass

result = issubclass(Child, Parent)
print(result)  # 输出: True

在这个示例中,ChildParent 的子类,所以 issubclass(Child, Parent) 返回 True

示例 2:使用元组判断多个类

class A:
    pass

class B:
    pass

class C(A):
    pass

result1 = issubclass(C, A)
result2 = issubclass(C, (A, B))
print(result1)  # 输出: True
print(result2)  # 输出: False

在这个示例中,CA 的子类,同时也可以看到 C 并不是 B 的子类。

示例 3:判断一个类是否为自身的子类

class MyClass:
    pass

result = issubclass(MyClass, MyClass)
print(result)  # 输出: True

在这个示例中,每个类都被认为是其自身的子类。

示例 4:判断类是否是内置类型的子类

result = issubclass(int, object)
print(result)  # 输出: True

在这个示例中,intobject 的子类,因为所有类都是 object 的子类。

总结

issubclass() 函数是用于检查一个类是否为另一个类的子类。它接受两个参数,第一个参数是要检查的类,第二个参数可以是一个类、一个类型元组或者一个类的元组,用于指定可能的父类。函数返回一个布尔值,如果第一个参数是第二个参数中的任何一个类的子类,则返回 True,否则返回 False