Python 3 Module of the Week¶
PyMOTW-3 is a series of articles written by Doug Hellmann to demonstrate how to use the modules of the Python 3 standard library. It is based on the original PyMOTW series, which covered Python 2.7. See About Python Module of the Week for details including the version of Python and tools used.
- Text
- Data Structures
- enum – Enumeration Type
- collections — Container Data Types
- array — Sequence of Fixed-type Data
- heapq – Heap Sort Algorithm
- bisect — Maintain Lists in Sorted Order
- queue — Thread-Safe FIFO Implementation
- struct — Binary Data Structures
- weakref — Impermanent References to Objects
- copy — Duplicate Objects
- pprint — Pretty-Print Data Structures
- Algorithms
- Dates and Times
- Mathematics
- The File System
- os.path — Platform-independent Manipulation of Filenames
- pathlib — Filesystem Paths as Objects
- glob — Filename Pattern Matching
- fnmatch — Unix-style Glob Pattern Matching
- linecache — Read Text Files Efficiently
- tempfile — Temporary File System Objects
- shutil — High-level File Operations
- filecmp — Compare Files
- mmap — Memory-map Files
- codecs — String Encoding and Decoding
- io — Text, Binary, and Raw Stream I/O Tools
- Data Persistence and Exchange
- Data Compression and Archiving
- Cryptography
- Concurrency with Processes, Threads, and Coroutines
- subprocess — Spawning Additional Processes
- signal — Asynchronous System Events
- threading — Manage Concurrent Operations Within a Process
- multiprocessing — Manage Processes Like Threads
- asyncio — Asynchronous I/O, event loop, and concurrency tools
- concurrent.futures — Manage Pools of Concurrent Tasks
- Networking
- The Internet
- urllib.parse — Split URLs into Components
- urllib.request — Network Resource Access
- urllib.robotparser — Internet Spider Access Control
- base64 — Encode Binary Data with ASCII
- http.server — Base Classes for Implementing Web Servers
- http.cookies — HTTP Cookies
- webbrowser — Displays web pages
- uuid — Universally Unique Identifiers
- json — JavaScript Object Notation
- xmlrpc.client — Client Library for XML-RPC
- xmlrpc.server — An XML-RPC server
- Application Building Blocks
- argparse — Command-Line Option and Argument Parsing
- getopt — Command Line Option Parsing
- readline — The GNU readline Library
- getpass — Secure Password Prompt
- cmd — Line-oriented Command Processors
- shlex — Parse Shell-style Syntaxes
- configparser — Work with Configuration Files
- logging — Report Status, Error, and Informational Messages
- fileinput — Command-Line Filter Framework
- atexit — Program Shutdown Callbacks
- sched — Timed Event Scheduler
- Internationalization and Localization
- Developer Tools
- pydoc — Online Help for Modules
- doctest — Testing Through Documentation
- unittest — Automated Testing Framework
- trace — Follow Program Flow
- traceback — Exceptions and Stack Traces
- cgitb — Detailed Traceback Reports
- pdb — Interactive Debugger
- profile and pstats — Performance Analysis
- timeit — Time the execution of small bits of Python code.
- tabnanny — Indentation validator
- compileall — Byte-compile Source Files
- pyclbr — Class Browser
- venv — Create Virtual Environments
- ensurepip — Install the Python Package Installer
- Runtime Features
- Language Tools
- Modules and Packages
- Unix-specific Services
- Porting Notes
- Outside of the Standard Library
- About Python Module of the Week