In this tutorial, we will talk about introspection in Python.
Introspection is an act of self-examination and is the greatest strength of Python. As you know, everything in Python is an object, and introspection is code looking at other modules and functions in memory as objects, getting information about them, and manipulating them. Along the way, you’ll define functions with no name, call functions with arguments out of order, and reference functions whose names you don’t even know ahead of time.
In computer programming, introspection is the ability to determine the type of an object at runtime. Python programming language has a large support of introspection. Everything in Python is an object. Every object in Python may have attributes and methods. By using introspection, we can dynamically inspect Python objects.
Introspection reveals useful information about your program’s objects. Python, being a dynamic, object-oriented programming language, provides tremendous introspection support. Python’s support for introspection runs deep and wide throughout the language. In fact, it would be hard to imagine Python without its introspection features. It has the ability to determine the type of an object at runtime. Henceforth, by using introspection, we dynamically inspect the Python objects.
Code introspection is required for examining into other modules, classes, functions, keywords or objects and retrieving information about them so that manipulation can be carried out, if necessary. Python provides several functions and utilities for code introspection. Along with it, you can also define call functions and reference functions with no name .
Related Article: Serialization in Python
Built- in functions mentioned in the chapter on functions are used for code introspection. Have a look at some of the following examples.
Finding out the type :
Converting to string :
You can use the dir() function to know about the functions and attributes for an object, as shown below :
For More Info: Example of Code Introspection
If you are interested to learn Python and to become an Python Expert? Then check out our Python Certification Training Course at your near Cities.
These courses are incorporated with Live instructor-led training, Industry Use cases, and hands-on live projects. This training program will make you an expert in Python and help you to achieve your dream job.
Anjaneyulu Naini is working as a Content contributor for Mindmajix. He has a great understanding of today’s technology and statistical analysis environment, which includes key aspects such as analysis of variance and software,. He is well aware of various technologies such as Python, Artificial Intelligence, Oracle, Business Intelligence, Altrex etc, Connect with him on LinkedIn and Twitter.