Core Python: Introspection

by Robert Smallshire and Austin Bingham

In this course, you'll look at Python's support for introspection, the ability to examine objects, types, and program state at runtime. While not needed in every program, introspection can be the key to elegant designs and debugging complex problems.

What you'll learn

Python is a highly dynamic language, and this dynamism is enabled by a great deal of metadata associated with objects at runtime. In this course, Core Python: Introspection, you'll explore Python's support for introspection, the ability of a program to examine - and even modify - its own structure and state through this metadata.

First, you'll look at introspection as the key to elegant designs or debugging complex problems. Then, you'll be introduced to Python’s facilities for introspecting live programs. Finally, you'll learn how to examine objects, types, and program state at runtime. By the end of this course you’ll know how to query objects for their attributes and inspect program state, and you’ll have a deeper knowledge of how Python programs are arranged internally.

Table of contents

Course Overview
2mins
Introspecting Types
3mins
Introspecting Scopes
4mins
The Inspect Module
6mins
An Object Introspection Tool
11mins

About the author

Robert Smallshire is a founding director of Sixty North, a software product and consulting business in based in Norway. He has held several senior software architecture and technical management roles, and he is a regular conference speaker. Python is his weapon of choice.

Austin is a founding director of Sixty North, a software consulting, training, and application development company. He's a native of Texas but currently lives in Norway where he writes software, runs a local software interest group, and presents and teaches whenever he can.

Ready to upskill? Get started