Internals of Python 3.x
Author | : Prashanth Raghu |
Publisher | : BPB Publications |
Total Pages | : 235 |
Release | : 2021-12-09 |
ISBN-10 | : 9789391030940 |
ISBN-13 | : 9391030947 |
Rating | : 4/5 (40 Downloads) |
Book excerpt: Deroute the syntactical way and start exploring the language from the source KEY FEATURES ● In-depth practical understanding of CPython's internal workings. ● Step-by-step source code walkthrough utilizing descriptors on source code lines. ● Cutting-edge coverage of the interpreter, GIL, compilation, and memory allocations to help you develop better systems. DESCRIPTION Internals of Python 3.x transform a programmer's learning path by emphasizing the source code over the syntax to teach things from the ground up in nearly the same amount of time and effort. The book delves into the structure and distinctions between the primary Python object and iterable objects. The iterable types, namely, lists and tuples, have been thoroughly defined in the structure and operations. The internals of sets and dictionaries, which are data structures that provide O(1) insertion and search, have been thoroughly discussed. Memory allocation explains how Python handles memory for tiny and large objects. The chapter on GIL explains how the GIL works, which is halted by a semaphore and a conditional variable. The chapter on Async Python describes how the async module generates coroutines and async functions that can be executed on an event loop and interact through events. After reading this book, you will be more confident to create high-performance code on a day-to-day basis. WHAT YOU WILL LEARN ● Utilize data structures effectively for a variety of application functions. ● Discover how to optimize Python code performance. ● Develop an understanding of memory optimization and how to design programs accordingly. ● Investigate the inner working of GIL and Interpreter in detail. ● Recognize the internals of the garbage collection and reference counting processes. WHO THIS BOOK IS FOR This book is intended for Python practitioners, new coding aspirants, and experienced Python developers who want to construct their frameworks and libraries by investigating tokenizers, parsers, code compilers, interpreters, memory management, GIL, and garbage collection. Prior programming skills in C may help you get the most out of this book. TABLE OF CONTENTS 1. Design of Generic Objects 2. Basic Python Types 3. Iterable Sequence Objects 4. Set and Dictionary 5. Functions and Generators 6. Memory Management 7. Interpreter and Opcodes 8. GIL and Multithreading 9. Async Python 10. Source Code Layout and the Compiler Stages