Get class name in Python

Get class name in Python

While working with objects in python, several times we need to get their class name. In this article, we will discuss several ways to get the class name of an object in python. 

How to get the attributes of an object?

An object in python has many attributes such as variables defined in its class definition, methods, and attributes containing metadata about the object. For instance, Brand, Model, Price, and Country are attributes of the myCar object created in the following example.

We can get other attributes associated with an object using the dir() function. The dir() function takes the object as its input argument and returns all the attributes of the object. You can observe this in the following example.

Output:

Here, you can observe that we have an attribute named __class__ in attributes of myCar. This attribute of the object returns the class of the object. We can use this attribute to get the class name in python.

Get Class name in python using the __class__ attribute 

To get the class name of an object using the __class__ attribute, we will first obtain the class of the object as follows.

Output:

Here, you can observe that we have got output in the form of <class '__main__.Car'>. This output shows that the class Car has been defined in the scope of the __main__ module i.e. the outermost scope. We can get the class name from this output using the __name__ attribute as follows.

Output:

Get Class name in python using type() function

The type() function is used to determine the class to which an object belongs in python. The type() function takes an object as an input argument and returns the class of the object in the following format.

Output:

Here, you can again observe that the output is in the form <class '__main__.Car'> showing that the class Car has been defined in the scope of the __main__ module. Again, we can get the class name using the __name__ attribute from the output of the type() function as follows.

Output:

Please be careful that this approach might not work for you if you are working with python 2.x. To get the class name in such a situation, you should use the __class__ attribute discussed in the previous section.

Conclusion

In this article, we have discussed two ways to get the class name in python. You may choose any of the approaches but choosing the __class__ attribute instead of the type() function will make your code more portable as it can be run on older as well as newer versions of python.

THat’s all about how to get class name in Python.

I hope you enjoyed reading this article. Stay tuned for more such informative articles.

Happy Learning.

Related Posts

  • Python check for null
    17 November

    How to check for null in Python

    Table of ContentsHow to check if a variable is NULL in Python?Using the is operator to check if a variable is NULL in Python.Using the if condition to check if a variable is NULL in Python.Using the not equal to operator to check if a variable is NULL in Python. This article demonstrates the different […]

  • Sort dictionary by value in Python
    17 November

    Sort dictionary by value in python

    Table of ContentsHow to sort sort dictionary by value in Python?Using for loop along with the sorted() function.Using the sorted() function to sort dictionary by value in Python.Using operator.itemgetter() function to sort sort dictionary by value in Python.Using lambda function to sort sort dictionary by value in Python.Using the OrderedDict() method to sort sort dictionary […]

  • Python print to file
    17 November

    How to Print to File in Python?

    Table of ContentsThe print() function in pythonHow to Print to file in python?Print to file using the file parameter in the print functionPrint to file by redirecting standard outputConclusion We use the print() function in python to print any text to standard output. In this article, we will see how we can use the print() […]

  • Python absolute path
    17 November

    Get Absolute Path in Python

    Table of ContentsWhat is an absolute path to a file? How to get absolute path in PythonUse abspath to get the absolute path to file use pathlib module to get the absolute path to file Conclusion We often use files to store the outputs of our programs in permanent storage. Generally, we work with relative […]

  • Python sort list of lists
    17 November

    Sort List of Lists in Python

    Table of ContentsSort List of Lists Using the sort() Method in PythonUsing the itemgetter() methodUsing Lambda FunctionsSort List of Lists Using the sorted() Function in PythonSort lists of lists on the basis of the length of the inner listsConclusion Several times we use 2-D lists or lists of lists in our programs to represent a […]

  • Python print type of variable
    16 November

    Print type of variable in Python

    Table of ContentsWhat is the type of variable in Python?Ways to print type of variable in PythonUsing the type() functionUsing the isinstance() functionUsing the __class__() functionConclusion What is the type of variable in Python? We use variables to store data in a reserved memory location. The type of a variable defines the memory allocated to […]

Leave a Reply

Your email address will not be published. Required fields are marked *

Subscribe to our newletter

Get quality tutorials to your inbox. Subscribe now.