My Account Log in

1 option

CPython : A Complete Guide to CPython's Architecture and Performance / by Chien-Lung Kao.

O'Reilly Online Learning: Academic/Public Library Edition Available online

View online
Format:
Book
Author/Creator:
Kao, Chien-Lung.
Series:
Professional and Applied Computing Series
Language:
English
Subjects (All):
Python (Computer program language).
Physical Description:
1 online resource (231 pages)
Edition:
1st ed. 2025.
Place of Publication:
Berkeley, CA : Apress : Imprint: Apress, 2025.
Summary:
Deep Dive CPython explores the internal mechanics of CPython, the widely used Python interpreter written in C. Starting with a practical guide on downloading and compiling the CPython source, this book is perfect for developers eager to understand Python’s behaviour at a fundamental level. The book takes readers from basic concepts to complex details with a systematic breakdown of core components. It covers everything from CPython’s data structures like PyObject and PyTypeObject to object lifecycle management, giving insight into memory allocation and object reference counting. Each chapter illustrates CPython's architecture, such as Python's "everything is an object" philosophy, list handling, string manipulation, and dictionary operations. Readers will explore Python’s REPL modifications, string internals, and custom type creation with practical examples, like crafting a "backflipping" PyKitty_Type. Detailed sections on Python’s virtual machine operations, bytecode generation, and exception handling enrich readers’ understanding of how Python code is parsed, compiled, and executed. This book is a thorough guide for readers who want to go beyond basic Python use and understand how it works internally. Covering complex concepts like generators, iterators, descriptors, and metaclasses, this book equips readers with a thorough grasp of Python's performance optimization and design complexities. What you will learn: How to download, compile, and modify CPython's source code Gain insight into fundamental structures like PyObject and PyTypeObject, Understand Python's detailed handling of lists, strings, dictionaries, and the REPL environment. What are bytecode generation, custom types, and the inner workings of Python’s virtual machine. Who this book is for: Python programmers aiming to gain a deeper understanding of Python’s internals and move beyond standard usage, as well as software professionals interested in CPython’s C-based implementation and core architecture. .
Contents:
Chapter 1: Reading the CPython Source Code
Chapter 2: Overview of the CPython Project Structure
Chapter 3: Everything Is an Object – Part 1
Chapter 4: How Objects Are Created in CPython
Chapter 5: Everything is an Object (Part 2)
Chapter 6: Defining a Custom Built-in Type
Chapter 7: What Happens During Module Import
Chapter 8: The Internal Representation of Integers
Chapter 9: Floating-Point Numbers in CPython
Chapter 10: Inside the String Object – Part 1
Chapter 11: Inside the String Object – Part 2
Chapter 12: What Happens When Python Starts
Chapter 13: From Source to Bytecode - How .py Becomes .pyc
Chapter 14: The List Object and Its Internal Management
Chapter 15: The Dictionary Object – Part 1
Chapter 16: The Dictionary Object – Part 2
Chapter 17: The Tuple Object and Its Immutability
Chapter 18: Inside the Python VM – Code Objects
Chapter 19: Inside the Python VM – Function Objects
Chapter 20: Inside the Python VM – Frame Objects
Chapter 21: Inside the Python VM – Namespaces and Scopes
Chapter 22: Inside the Python VM – Cells and Closures
Chapter 23: Classes and Where They Come From
Chapter 24: Class Inheritance in CPython
Chapter 25: Method Resolution Order and C3 Linearization
Chapter 26: The Role of super() in Multiple Inheritance
Chapter 27: The Generator Object and the yield Statement
Chapter 28: How Iterators Work Internally
Chapter 29: Understanding Descriptors in Python
Chapter 30: Exception Handling Internals in CPython.
ISBN:
9798868817694
OCLC:
1553059317

The Penn Libraries is committed to describing library materials using current, accurate, and responsible language. If you discover outdated or inaccurate language, please fill out this feedback form to report it and suggest alternative language.

Find

Home Release notes

My Account

Shelf Request an item Bookmarks Fines and fees Settings

Guides

Using the Find catalog Using Articles+ Using your account