Python Language

Listed by section, in editorial order. Click a column header to re-sort the whole list.

Press / to search. Tags open their category. Click a row for details.

Search and filter

Results

Row number Tags

Implementations 5 projects

Unless you need MicroPython on a microcontroller or Pyodide in the browser, CPython is the Python implementation to run. Cython compiles your slow code to C.

Default, most widely used implementation of the Python programming language written in C.
python/github.com/python/cpython /77,691 stars /
A lean and efficient Python implementation for microcontrollers and constrained systems.
A very fast and compliant implementation of the Python language.
pypy/github.com/pypy/pypy /1,822 stars /
Optimizing static compiler for Python.
cython/github.com/cython/cython /10,888 stars /
Python distribution for the browser and Node.js based on WebAssembly.
pyodide/github.com/pyodide/pyodide /14,917 stars /

Built-in Classes Enhancement 4 projects

Skip hand-written dunder methods, and when you compare Python dataclass alternatives, pick attrs for its validators and converters. Box gives dicts dot access.

Replacement for __init__, __eq__, __repr__, etc. boilerplate in class definitions.
python-attrs/github.com/python-attrs/attrs /5,864 stars /
Efficient, Pythonic bidirectional map data structures and related functionality.
jab/github.com/jab/bidict /1,589 stars /
A fast, Rust-backed drop-in replacement for Python's built-in uuid module.
Python dictionaries with advanced dot notation access.
cdgriffith/github.com/cdgriffith/Box /2,841 stars /

Functional Programming 5 projects

Beyond functools, install more-itertools, as the itertools docs suggest. toolz is a fuller Python functional programming library, and returns adds typed errors.

(Python standard library) Higher-order functions and operations on callable objects.
More routines for operating on iterables, beyond itertools.
A collection of functional utilities for iterators, functions, and dictionaries. Also available as cytoolz for Cython-accelerated performance.
pytoolz/github.com/pytoolz/toolz /5,161 stars /
Fancy and practical functional tools.
Suor/github.com/Suor/funcy /3,506 stars /
A set of type-safe monads, transformers, and composition utilities.
dry-python/github.com/dry-python/returns /4,383 stars /

Asynchronous Programming 8 projects

I/O-bound or CPU-bound? I/O-bound code wants a Python async library, and asyncio comes built in. CPU-bound work goes to a concurrent.futures process pool.

(Python standard library) Asynchronous I/O, event loop, coroutines and tasks.
Also see: awesome-asyncio
A high-level async concurrency and networking framework that works on top of asyncio or trio.
agronholm/github.com/agronholm/anyio /2,564 stars /
Ultra-fast asyncio event loop.
MagicStack/github.com/MagicStack/uvloop /11,921 stars /
A friendly library for async concurrency and I/O.
python-trio/github.com/python-trio/trio /7,356 stars /
A coroutine-based Python networking library that uses greenlet.
gevent/github.com/gevent/gevent /6,441 stars /
An event-driven networking engine.
twisted/github.com/twisted/twisted /5,994 stars /
(Python standard library) High-level asynchronous execution of callables.
(Python standard library) Process-based parallelism.

Date and Time 5 projects

Handle time zones with the built-in zoneinfo. Parsing date strings and adding months is where a Python date library earns its install: python-dateutil.

(Python standard library) IANA time zone support. Brings the tz database into Python.
Extensions to the standard Python datetime module.
dateutil/github.com/dateutil/dateutil /2,641 stars /
A Python parser for human-readable dates in over 200 language locales.
Python datetimes made easy.
A modern datetime library, type-safe and DST-safe, in Rust or pure Python.

Know a project that belongs here?

Tell us what it does and why it stands out.