Latest Code Tutorials

Python issubclass: How to Use issubclass() Function


Python issubclass() is an inbuilt method that is used to check if a class is a subclass of another class or not. In this method, the first argument is checked with the second argument that if the first one is the subclass of the second one or not.

Python issubclass

Python issubclass() function checks if the object argument (first argument) is a subclass of classinfo class (second argument).

The issubclass() function returns boolean True if the specified object is the subclass of the specified object, otherwise False.


issubclass(object, classinfo)

Here are the following parameters.

object:  is the class to be checked.

classinfo: is a class, tuple, or type of a class.

Python issubclass() function returns two types of result, True or False.

If the object is a subclass of classinfo, then it returns True; otherwise, it returns False.

See the following code example.

#Creating superclass
class Bank:

#Creating subclass
class SBI(Bank):

#Creating sub class of SBI 
class HDFC (SBI):

#Now we will check subclass with different arguments

#Checking if SBI is subclass of Bank or not

#Checking if Bank is subclass of SBi or not
print(issubclass(Bank, SBI))

#Checking multilevel subclass
print(issubclass(HDFC, Bank))

#Checking if a class is subclass of itself or not

#checking with an object argument
#Here object is referred to base class always
print(issubclass(Bank, object))

See the output.


So, it returns True if the class supplied as the first argument is the subclass of another class supplied as the second argument, otherwise, it returns False.

#Python issubclass() with a tuple of classes

See the following code.


class Top:

class Middle(Top):

class Low(Middle):

print(issubclass(Low, (str, list, Top)))

In the above example, you can say that Top is the main parent class, then its child class is Middle, and the Middle class’s child class is Low.

Next in the print statement, we are checking Low-class type is the subclass of a single class or tuple of classes. See the output.

➜  pyt python3
➜  pyt

#Difference between issubclass() and isinstance()

Python isinstance(object, classinfo) checks whether or not the object is an instance or subclass of classinfo.

Whereas, issubclass(class, classinfo) checks whether or not a class is a subclass of classinfo.

Python isinstance() function is used to check if the object is an instance of the specific class or any of its subclass.  It takes two parameters.

The first one is an object to test, and the second one is a single class or a tuple of classes. It will check if the first parameter which is the object, is the instance of class classinfo.

If the second parameter is the tuple of classes, it will check if the first object is the instance of any of the classes in the tuple.

Again, the issubclass() is used to check if the class type is the subclass of a different class. The second parameter is a single class or a tuple of classes.

Recommended Posts

Python Modules

Python dir() Example

Python Eval Function

Python Subprocess Example

Python Requests

1 Comment
  1. Amit Parmar says

    Thanks for the post

Leave A Reply

Your email address will not be published.

This site uses Akismet to reduce spam. Learn how your comment data is processed.