Packages
Pyomo is a Python framework for formulating and solving optimization problems, supporting linear, quadratic, nonlinear, mixed-integer, stochastic, and constraint programming models with external solvers.
Install it if you are solving any optimization problem and want to work in Python; the main gotcha is that you must separately install or configure a solver backend.
Provides Python bindings to the OpenNebula XML-RPC API, enabling programmatic control of OpenNebula cloud infrastructure through Python code.
Install only if you have an OpenNebula server to connect to; it is not useful as a standalone library.
Implements an OpenID Connect Provider (OP) library that handles authentication flows, token management, and provider configuration for web applications.
PyOpenCL provides Python bindings to OpenCL, enabling you to write GPU and massively parallel compute code that runs on diverse hardware accelerators through a Pythonic interface.
PyOpenGL provides standard OpenGL bindings for Python, enabling direct access to OpenGL graphics libraries through ctypes without requiring compiled extensions.
Provides Cython-compiled C extensions that accelerate common operations in PyOpenGL, targeting performance bottlenecks in the main library.
Wraps OpenJTalk to provide Japanese text-to-speech synthesis, grapheme-to-phoneme conversion, and linguistic text processing for Japanese.
However, the package is aging (493 days since last release) and has high install friction due to compilation dependencies.
pyOpenSSL wraps OpenSSL's SSL/TLS functionality for Python, providing high-level connection objects and certificate handling through a Python-friendly interface around OpenSSL's cryptographic operations.
Pyorbital computes orbital parameters from TLE (Two-Line Element) files and performs astronomical calculations for satellite scheduling and pass prediction.
Install it if you need TLE parsing, satellite pass prediction, or orbital position calculations; skip it if your work does not involve satellite scheduling or tracking.
PyORC reads and writes Apache ORC files using Python, wrapping the Apache ORC C++ API and providing an interface similar to Python's csv module.
pyotgw is a Python library that communicates with an OpenTherm Gateway device over serial or network connection, allowing you to read and control heating system parameters asynchronously.
Install it if you own an OpenTherm Gateway and need to control or monitor a compatible heating system from Python.
PyOTP generates and verifies one-time passwords (HOTP and TOTP) for implementing two-factor and multi-factor authentication in web applications and other systems.
An asynchronous Python client for the OverKiz API that enables interaction with smart devices connected to OverKiz-compatible hubs from vendors like Somfy TaHoma and Atlantic Cozytouch.
PyOWM is a Python client library that wraps OpenWeatherMap web APIs, letting you fetch current weather, forecasts, air pollution, UV index, alerts, and other meteorological data from Python code.
Pyoxigraph is a Python library that provides in-memory and disk-based graph databases with SPARQL 1.1 query support, plus utilities for reading and writing RDF data in multiple formats including JSON-LD, Turtle, TriG, N-Triples, N-Quads, and RDF/XML.
However, it is classified as Alpha, so production use should account for potential API changes.
pyoxipng reduces PNG file sizes through compression, offering file-based and in-memory optimization plus the ability to create PNGs from raw image data.
PyPAC discovers proxy auto-config (PAC) files and makes HTTP requests that respect them, with automatic PAC discovery on Windows and macOS and support for the WPAD protocol.
Install it if your application needs to respect PAC files or auto-discover proxies; skip it if you're in an environment with static proxy configuration or no proxy…
Pypandoc wraps pandoc, a universal document converter, letting you convert between document formats (Markdown, HTML, DOCX, PDF, and many others) from Python code.
Install it if you need to convert between document formats from Python code.
pypandoc_binary wraps pandoc, a universal document converter, and bundles the pandoc binary so you can convert between document formats without a separate pandoc installation.
pyparsing provides a library for building text parsers directly in Python code using composable grammar classes, handling quoted strings, whitespace variation, and embedded comments without regex or lex/yacc.
Install it if you need to parse text or define grammars programmatically.
Python wrapper around libpcap that lets you capture and inspect network packets at the link layer, with support for both Linux and Windows systems.
No—install only if you have a specific, legacy requirement.
pypcd4 reads, writes, and manipulates Point Cloud Data (PCD) files, converting between PCD format, NumPy arrays, and ROS PointCloud2 messages.
pypck is an asynchronous Python library for connecting to LCN (local control network) systems using the LCN-PCK protocol, enabling remote control of LCN modules.
pypcode provides machine code disassembly and intermediate representation (IR) translation for Python, using the SLEIGH library from Ghidra to convert binary code into analyzable IR.
A Python client for PagerDuty's v2 API that provides object-oriented access to incidents, escalation policies, users, and events.
pypdf is a pure-Python library for reading, splitting, merging, cropping, and transforming PDF files, plus extracting text, metadata, and managing encryption.
Install it if you need pure-Python PDF manipulation without external system dependencies.
PyPDF2 is a pure-Python library for reading, splitting, merging, cropping, and transforming PDF files, plus extracting text, metadata, and managing encryption.
However, version 3.0.x is the final release under this name, and development continues under a successor package.
PyPDF3 is a pure-Python PDF toolkit for extracting document information, splitting and merging pages, cropping, and encrypting or decrypting PDF files without external dependencies.
PyPDF4 is a pure-Python PDF toolkit for extracting document metadata, splitting and merging pages, cropping, encrypting, and decrypting PDF files without external dependencies.
PyPDFForm creates, inspects, styles, and fills PDF forms via Python API or command line, with utilities for page extraction and PDF merging.
Install it if you need to create, inspect, or fill PDF forms programmatically.
pypdfium2 is a Python binding to PDFium that enables PDF rendering, inspection, manipulation, and creation through a ctypes interface to Google's PDFium library.
Install it if you need PDF rendering, inspection, or manipulation in Python; the medium install friction is offset by comprehensive platform support.
Python wrapper that drives the pdftk binary to fill PDF forms, merge PDFs, extract pages, split documents, and perform other PDF manipulation tasks.
Install only if you already have pdftk running on your system and need straightforward Python bindings to its core functions.
pyPEG2 is a PEG (Parsing Expression Grammar) parser generator that lets you write your own parsers in Python, supporting both Python 2.7 and Python 3.x with Unicode handling.
Pypeln lets you build concurrent data pipelines using processes, threads, or asyncio tasks with a unified functional API, allowing fine-grained control over workers and memory at each stage.
However, avoid it for new projects requiring long-term support or compatibility with future Python versions—the abandoned status means no bug fixes or updates.
Provides a Python interface to PEMicro debug probe libraries, enabling control and communication with PEMicro Multilink/FX and Cyclone/FX probes for ARM microcontroller debugging.
Install only if you have the required hardware and PEMicro libraries already set up on your system.
Pyperclip provides simple cross-platform access to the system clipboard, allowing Python code to copy text to and paste text from the clipboard on Windows, macOS, and Linux.
Install it if you need cross-platform clipboard access; the only gotcha is ensuring Linux systems have xclip/xsel available or Qt installed.
pyperf is a toolkit for writing, running, and analyzing Python benchmarks with automatic calibration, statistical analysis, and JSON result storage.
Install it if you need to measure performance seriously rather than relying on ad-hoc timeit calls.
Pyperplan is a lightweight STRIPS planner that solves classical planning problems by reading PDDL domain and problem files and computing action sequences to reach a goal state.
PyPgConfig detects and exposes PostgreSQL configuration details from the system's pg_config tool, allowing Python code to query PostgreSQL version, library dependencies, and build settings.
However, the lack of updates since 2023-11-28 and alpha status mean you should verify it works with your PostgreSQL version and be prepared to maintain a fork if needed.
pypgstac provides Python bindings and utilities for managing Spatio-Temporal Asset Catalog (STAC) data in PostgreSQL, including search, filtering, and schema management functions.