Language Reference¶
This section covers Python language features, design patterns, standard library modules, and internal details like the AST and time complexity of built-in operations. It is a mix of explanations, proposals, and discussions – some of it historical, some still useful as reference. If you want to understand how a particular feature works under the hood, or why Python made the design choices it did, look here.
Core Language Features¶
Decorators – syntax, use cases, and links to the decorator library on PyPI
Generators – how generator functions work and how to use them as iterators
Iterator – the iterator protocol,
__iter__and__next__explainedWith Statement – discussion of PEP 343 and context managers
Abstract Base Classes – the proposed Python 3K class tree
Switch Statement – historical proposals for adding switch/case to Python
Alternate Lambda Syntax – community proposals for lambda alternatives before Python 3
AST and Internals¶
AST – overview of Python’s Abstract Syntax Tree for source analysis
AST-Based Optimization – performing peephole optimizations at the AST level instead of bytecode
Byteplay Documentation – docs for the byteplay bytecode manipulation library
Patterns and Design¶
Observer Pattern – implementing the observer pattern in Python
Adapter Registry – a component that adapts one interface to another
Computed Attributes Using Property Objects – using
property()for computed attributesAlternative Description of Property – another take on how Python properties work
Configuration Parsing¶
ConfigParser – overview of the ConfigParser module and its design
ConfigParser Examples – basic usage examples for configparser
ConfigParser Goals – separating in-memory config from persistent storage
ConfigParser Shootout – comparing ConfigParser alternatives and debating future directions
Path Handling¶
Alternative Path Class – directory-based path classes as an alternative to PEP 355
Alternative Path Discussion – community discussion on path class design decisions
Alternative Path Module – source code for the proposed alternative path module
Alternative Path Module Tests – test suite for the alternative path module
Data and Text¶
Data Representation – working with data on the web and in Python
Structured Text – StructuredText markup language resources and discussion
Structured Text – creating rich documents without explicit markup
Structure Annotation – annotating web page regions to map onto data structures
Language Parsing – evaluation of different parser libraries available for Python
Concurrency¶
Concurrency – collected resources on concurrent programming in Python
Concurrency – overview of concurrency approaches and threading
Performance Reference¶
Time Complexity – Big-O time and space complexity for Python built-in types
Time Complexity (Set Code) – analysis and implementation notes for set operation complexity