There’s more than one way to work with threads, or without them, in Python. In this edition of the Python Report: Get the skinny on Python threads and subprocesses, use Python’s native async library to break up non-CPU-bound tasks, and get started using parallel processing for heavier jobs in your Python programs. Also, check out the built-in async features in Python 3.13 if you haven’t already.
Top picks for Python readers on InfoWorld
Python threading and subprocesses explained
How does Python manage units of work meant to run side-by-side? Get started with threads and subprocesses—two different ways of getting things done in your Python programs.
How to use asyncio: Python’s built-in async library
Async is the best way to run many small jobs that yield to each other as needed—say, web scraping at scale or other network-bound operations.
The best Python libraries for parallel processing
Parallel processing libraries are used for big jobs that need to be broken across multiple CPUs or even multiple machines. Here are some of the best options out there.
Get started with the free-threaded build of Python 3.13
Do you want to really master threads in Python? Experiment with Python 3.13’s free-threaded alternate build and discover the difference for yourself.
More good reads and Python updates elsewhere
aiopandas: Async support for common Pandas operations
Check out the new monkey patch for adding async support and parallel execution to map
, apply
, and other common operations in Pandas. Minimal code changes required.
A very early peek at Astral’s Red Knot static type checker for Python
The team behind the uv
environment management tool for Python is now brewing up a wicked-fast static type checker, too. Here’s an early peek, and some primitive but promising hints of what’s to come.
Specializing Python with e-graphs
Curious about the workings of projects that compile Python to assembly? Here’s a deep—and we mean deep—dive into analyzing and rewriting Python expressions as low-level machine language.
A look back at very early C compilers
How early? So early you’d need a PDP-11 emulator to get them running. (Also available on GitHub.)