In Python, the issubclass() function is used to determine whether one class is a subclass of another class.

Function Syntax

issubclass(class, classinfo)

Parameters:

  • class: The class to check.
  • classinfo: A class, type, or tuple of types.

Returns True if class is a subclass of classinfo or the same class, otherwise returns False.

issubclass() Function Examples

# Define a parent class
class Animal:
    pass

# Define a subclass
class Dog(Animal):
    pass

# Check if Dog is a subclass of Animal
result = issubclass(Dog, Animal)
print(result)  # Output: True

# Check if Animal is a subclass of Dog
result = issubclass(Animal, Dog)
print(result)  # Output: False

Check if it's the same class:

class Animal:
    pass

class Dog(Animal):
    pass

result = issubclass(Dog, Dog)
print(result)  # Output: True

result = issubclass(Animal, Animal)
print(result)  # Output: True

Check multiple parent classes simultaneously:

# Define two parent classes
class Animal:
    pass

class Plant:
    pass

# Define a subclass
class Dog(Animal):
    pass

# Check if Dog is a subclass of Animal or Plant
result = issubclass(Dog, (Animal, Plant))
print(result)  # Output: True

# Check if Animal is a subclass of Plant or Dog
result = issubclass(Animal, (Plant, Dog))
print(result)  # Output: False