Table of Contents
Python Awesome
Return to All Things Python, Python Topics, Awesome Lists, GitHub awesome
Awesome Python
https://cdn.rawgit.com/sindresorhus/awesome/d7305f38d29fed78fa85652e3a63e154dd8e8829/media/badge.svg)](https://github.com/sindresorhus/awesome)
A curated list of awesome Python frameworks, Python libraries, Python software and Python resources.
Inspired by awesome-php (https://github.com/ziadoz/awesome-php).
Awesome Python - (awesome-python)
- Python Audio - (audio)
- Python CMS - (cms)
- Python Email - (email)
- Python Files - (files)
- Python Forms - (forms)
- Python ORM - (orm)
- Python Search - (search)
- Python Shell - (shell)
- Python Video - (video)
- [Resources]] - (resources)
- Python Books - (books)
Python Admin Panels
- Python ajenti - (https://github.com/ajenti/ajenti) - The admin panel your servers deserve.
- django-grappelli - (https://grappelliproject.com/) - A jazzy skin for the Django Admin-Interface.
- django-jet - (https://github.com/geex-arts/django-jet) - Modern responsive template for the Django admin interface with improved functionality.
- django-suit - (https://djangosuit.com/) - Alternative Django Admin-Interface (free only for Non-commercial use).
- django-xadmin - (https://github.com/sshwsfc/xadmin) - Drop-in replacement of Django admin comes with lots of goodies.
- flask-admin - (https://github.com/flask-admin/flask-admin) - Simple and extensible administrative interface framework for Flask.
- Python flower - (https://github.com/mher/flower) - Real-time monitor and web admin for Celery.
- Python jet-bridge - (https://github.com/jet-admin/jet-bridge) - Admin panel framework for any application with nice UI (ex Jet Django).
- Python wooey - (https://github.com/wooey/wooey) - A Django app which creates automatic web UIs for Python scripts.
Python Algorithms and Design Patterns
Python Algorithms and Design Patterns
- Python implementation of data structures, algorithms and design patterns. Also see awesome-algorithms - (https://github.com/tayllan/awesome-algorithms)
- Python algorithms - (https://github.com/keon/algorithms) - Minimal examples of data structures and algorithms.
- python-ds - (https://github.com/prabhupant/python-ds) - A collection of data structure and algorithms for coding interviews.
- Python sortedcontainers - (https://github.com/grantjenks/python-sortedcontainers) - Fast and pure-Python implementation of sorted collections.
- Python TheAlgorithms - (https://github.com/TheAlgorithms/Python) - All Algorithms implemented in Python.
- Python PyPattyrn - (https://github.com/tylerlaberge/PyPattyrn) - A simple yet effective library for implementing common design patterns.
- python-patterns - (https://github.com/faif/python-patterns) - A collection of design patterns in Python.
- Python transitions - (https://github.com/pytransitions/transitions) - A lightweight, object-oriented finite state machine implementation.
Python ASGI Servers
- Python daphne - (https://github.com/django/daphne) - A HTTP, HTTP2 and WebSocket protocol server for ASGI and ASGI-HTTP.
- Python uvicorn - (https://github.com/encode/uvicorn) - A lightning-fast ASGI server implementation, using uvloop and httptools.
Python Asynchronous Programming
- Python asyncio - (https://docs.python.org/3/library/asyncio.html) - (Python standard library) Asynchronous I/O, event loop, coroutines and tasks.
- Python trio - (https://github.com/python-trio/trio) - A friendly library for async concurrency and I/O.
- Python Twisted - (https://twistedmatrix.com/trac/) - An event-driven networking engine.
- Python uvloop - (https://github.com/MagicStack/uvloop) - Ultra fast asyncio event loop.
Python Audio
Python Libraries for manipulating audio and its metadata
- Python audioread - (https://github.com/beetbox/audioread) - Cross-library (GStreamer + Core Audio + MAD + FFmpeg) audio decoding.
- Python dejavu - (https://github.com/worldveil/dejavu) - Audio fingerprinting and recognition.
- Python kapre - (https://github.com/keunwoochoi/kapre) - Keras Audio Preprocessors.
- Python librosa - (https://github.com/librosa/librosa) - Python library for audio and music analysis.
- Python matchering - (https://github.com/sergree/matchering) - A library for automated reference audio mastering.
- Python mingus - (http://bspaans.github.io/python-mingus/) - An advanced music theory and notation package with MIDI file and playback support.
- Python pyAudioAnalysis - (https://github.com/tyiannak/pyAudioAnalysis) - Audio feature extraction, classification, segmentation and applications.
- Python pydub - (https://github.com/jiaaro/pydub) - Manipulate audio with a simple and easy high level interface.
- Python TimeSide - (https://github.com/Parisson/TimeSide) - Open web audio processing framework.
- Python beets - (https://github.com/beetbox/beets) - A music library manager and [MusicBrainz]] - (https://musicbrainz.org/) tagger.
- Python eyeD3 - (https://github.com/nicfit/eyeD3) - A tool for working with audio files, specifically MP3 files containing ID3 metadata.
- Python mutagen - (https://github.com/quodlibet/mutagen) - A Python module to handle audio metadata.
- Python tinytag - (https://github.com/devsnd/tinytag) - A library for reading music meta data of MP3, OGG, FLAC and Wave files.
Python Authentication
- Python authlib - (https://github.com/lepture/authlib) - JavaScript Object Signing and Encryption draft implementation.
- django-allauth - (https://github.com/pennersr/django-allauth) - Authentication app for Django that “just works.”
- django-oauth-toolkit - (https://github.com/evonove/django-oauth-toolkit) - OAuth 2 goodies for Django.
- Python oauthlib - (https://github.com/idan/oauthlib) - A generic and thorough implementation of the OAuth request-signing logic.
- python-oauth2 - (https://github.com/joestump/python-oauth2) - A fully tested, abstract interface to creating OAuth clients and servers.
- python-social-auth - (https://github.com/omab/python-social-auth) - An easy-to-setup social authentication mechanism.
- Python pyjwt - (https://github.com/jpadilla/pyjwt) - JSON Web Token implementation in Python.
- python-jose - (https://github.com/mpdavis/python-jose/) - A JOSE implementation in Python.
- python-jwt - (https://github.com/davedoesdev/python-jwt) - A module for generating and verifying JSON Web Tokens.
Python Build Tools
Python Compile software from source code:
- Python BitBake - (http://www.yoctoproject.org/docs/1.6/bitbake-user-manual/bitbake-user-manual.html) - A make-like build tool for embedded Linux.
- Python buildout - (http://www.buildout.org/en/latest/) - A build system for creating, assembling and deploying applications from multiple parts.
- Python PlatformIO - (https://github.com/platformio/platformio-core) - A console tool to build code with different development platforms.
- Python pybuilder - (https://github.com/pybuilder/pybuilder) - A continuous build tool written in pure Python.
- Python SCons - (http://www.scons.org/) - A software construction tool.
Python Built-in Classes Enhancement
Python Libraries for enhancing Python built-in classes
- Python attrs - (https://github.com/python-attrs/attrs) - Replacement for `__init__`, `__eq__`, `__repr__`, etc. boilerplate in class definitions.
- Python bidict - (https://github.com/jab/bidict) - Efficient, Pythonic bidirectional map data structures and related functionality..
- Python Box - (https://github.com/cdgriffith/Box) - Python dictionaries with advanced dot notation access.
- Python dataclasses - (https://docs.python.org/3/library/dataclasses.html) - (Python standard library) Data classes.
- Python DottedDict - (https://github.com/carlosescri/DottedDict) - A library that provides a method of accessing lists and dicts with a dotted path notation.
Python CMS
Python Content Management Systems:
- django-cms - (https://www.django-cms.org/en/) - An Open source enterprise CMS based on the Django.
- Python feincms - (https://github.com/feincms/feincms) - One of the most advanced Content Management Systems built on Django.
- Python indico - (https://github.com/indico/indico) - A feature-rich event management system, made @ [CERN]] - (https://en.wikipedia.org/wiki/CERN).
- Python Kotti - (https://github.com/Kotti/Kotti) - A high-level, Pythonic web application framework built on Pyramid.
- Python mezzanine - (https://github.com/stephenmcd/mezzanine) - A powerful, consistent, and flexible content management platform.
- Python plone - (https://plone.org/) - A CMS built on top of the open source application server Zope.
- Python quokka - (https://github.com/rochacbruno/quokka) - Flexible, extensible, small CMS powered by Flask and MongoDB.
- Python wagtail - (https://wagtail.io/) - A Django content management system.
Python Caching
Python Libraries for caching data:
- Python beaker - (https://github.com/bbangert/beaker) - A WSGI middleware for sessions and caching.
- django-cache-machine - (https://github.com/django-cache-machine/django-cache-machine) - Automatic caching and invalidation for Django models.
- django-cacheops - (https://github.com/Suor/django-cacheops) - A slick ORM cache with automatic granular event-driven invalidation.
- Python dogpile.cache - (http://dogpilecache.readthedocs.io/en/latest/) - dogpile.cache is next generation replacement for Beaker made by same authors.
- Python HermesCache - (https://pypi.org/project/HermesCache/) - Python caching library with tag-based invalidation and dogpile effect prevention.
- Python pylibmc - (https://github.com/lericson/pylibmc) - A Python wrapper around the [libmemcached]] - (https://libmemcached.org/libMemcached.html) interface.
- python-diskcache - (http://www.grantjenks.com/docs/diskcache/) - SQLite and file backed cache backend with faster lookups than memcached and redis.
Python ChatOps Tools
Python Libraries for chatbot development:
- Python errbot - (https://github.com/errbotio/errbot/) - The easiest and most popular chatbot to implement ChatOps.
Python Code Analysis
Python Tools of static analysis, linters and code quality checkers:
Also see awesome-static-analysis - (https://github.com/mre/awesome-static-analysis)
- Python coala - (https://github.com/coala/coala/) - Language independent and easily extendable code analysis application.
- Python code2flow - (https://github.com/scottrogowski/code2flow) - Turn your Python and JavaScript code into DOT flowcharts.
- Python prospector - (https://github.com/PyCQA/prospector) - A tool to analyse Python code.
- Python pycallgraph - (https://github.com/gak/pycallgraph) - A library that visualises the flow (call graph) of your Python application.
- Python vulture - (https://github.com/jendrikseipp/vulture) - A tool for finding and analysing dead Python code.
- Python flake8 - (https://pypi.org/project/flake8/) - A wrapper around `pycodestyle`, `pyflakes` and McCabe.
- Python pylama - (https://github.com/klen/pylama) - A code audit tool for Python and JavaScript.
- Python pylint - (https://www.pylint.org/) - A fully customizable source code analyzer.
- Python wemake-python-styleguide - (https://github.com/wemake-services/wemake-python-styleguide) - The strictest and most opinionated python linter ever.
- Python black - (https://github.com/python/black) - The uncompromising Python code formatter.
- Python isort - (https://github.com/timothycrosley/isort) - A Python utility / library to sort imports.
- Python yapf - (https://github.com/google/yapf) - Yet another Python code formatter from Google.
Also see awesome-python-typing - (https://github.com/typeddjango/awesome-python-typing)
- Python mypy - (http://mypy-lang.org/) - Check variable types during compile time.
- Python pyre-check - (https://github.com/facebook/pyre-check) - Performant type checking.
- Python typeshed - (https://github.com/python/typeshed) - Collection of library stubs for Python, with static types.
Python Static Type Annotations Generators:
- Python MonkeyType - (https://github.com/Instagram/MonkeyType) - A system for Python that generates static type annotations by collecting runtime types.
- Python pyannotate - (https://github.com/dropbox/pyannotate) - Auto-generate PEP-484 annotations.
- Python pytype - (https://github.com/google/pytype) - Pytype checks and infers types for Python code - without requiring type annotations.
Python Command-line Interface Development
Python Libraries for building command-line applications:
Python Command-line Application Development:
- Python cement - (http://builtoncement.com/) - CLI Application Framework for Python.
- Python click - (http://click.pocoo.org/dev/) - A package for creating beautiful command line interfaces in a composable way.
- Python cliff - (https://docs.openstack.org/developer/cliff/) - A framework for creating command-line programs with multi-level commands.
- Python docopt - (http://docopt.org/) - Pythonic command line arguments parser.
- python-fire - (https://github.com/google/python-fire) - A library for creating command line interfaces from absolutely any Python object.
- python-prompt-toolkit - (https://github.com/jonathanslenders/python-prompt-toolkit) - A library for building powerful interactive command lines.
- Python alive-progress - (https://github.com/rsalmei/alive-progress) - A new kind of Progress Bar, with real-time throughput, eta and very cool animations.
- Python asciimatics - (https://github.com/peterbrittain/asciimatics) - A package to create full-screen text UIs (from interactive forms to ASCII animations).
- Python bashplotlib - (https://github.com/glamp/bashplotlib) - Making basic plots in the terminal.
- Python colorama - (https://pypi.org/project/colorama/) - Cross-platform colored terminal text.
- Python rich - (https://github.com/willmcgugan/rich) - Python library for rich text and beautiful formatting in the terminal. Also provides a great `RichHandler` log handler.
- Python tqdm - (https://github.com/tqdm/tqdm) - Fast, extensible progress bar for loops and CLI.
Python Command-line Tools
Python Useful CLI-based tools for productivity:
- Python copier - (https://github.com/pykong/copier) - A library and command-line utility for rendering projects templates.
- Python cookiecutter - (https://github.com/audreyr/cookiecutter) - A command-line utility that creates projects from cookiecutters (project templates).
- Python doitlive - (https://github.com/sloria/doitlive) - A tool for live presentations in the terminal.
- Python howdoi - (https://github.com/gleitz/howdoi) - Instant coding answers via the command line.
- Python Invoke - (https://github.com/pyinvoke/invoke#readme) - A tool for managing shell-oriented subprocesses and organizing executable Python code into CLI-invokable tasks.
- Python PathPicker - (https://github.com/facebook/PathPicker) - Select files out of bash output.
- Python percol - (https://github.com/mooz/percol) - Adds flavor of interactive selection to the traditional pipe concept on UNIX.
- Py thon thefuck - (https://github.com/nvbn/thefuck) - Correcting your previous console command.
- Python tmuxp - (https://github.com/tony/tmuxp) - A [tmux]] - (https://github.com/tmux/tmux) session manager.
- Python try - (https://github.com/timofurrer/try) - A dead simple CLI to try out python packages - it's never been easier.
- Python httpie - (https://github.com/jakubroztocil/httpie) - A command line HTTP client, a user-friendly cURL replacement.
- Python iredis - (https://github.com/laixintao/iredis) - Redis CLI with autocompletion and syntax highlighting.
- Python kube-shell - (https://github.com/cloudnativelabs/kube-shell) - An integrated shell for working with the Kubernetes CLI.
- Python litecli - (https://github.com/dbcli/litecli) - SQLite CLI with autocompletion and syntax highlighting.
- Python mycli - (https://github.com/dbcli/mycli) - MySQL CLI with autocompletion and syntax highlighting.
- Python pgcli - (https://github.com/dbcli/pgcli) - PostgreSQL CLI with autocompletion and syntax highlighting.
- Python saws - (https://github.com/donnemartin/saws) - A Supercharged [aws-cli]] - (https://github.com/aws/aws-cli).
Python Compatibility
Python Libraries for migrating from Python 2 to 3:
- python-future - (http://python-future.org/index.html) - The missing compatibility layer between Python 2 and Python 3.
- Python modernize - (https://github.com/PyCQA/modernize) - Modernizes Python code for eventual Python 3 migration.
- Python six - (https://pypi.org/project/six/) - Python 2 and 3 compatibility utilities.
Python Computer Vision
Python Libraries for Computer Vision:
- Python EasyOCR - (https://github.com/JaidedAI/EasyOCR) - Ready-to-use OCR with 40+ languages supported.
- Python Face Recognition - (https://github.com/ageitgey/face_recognition) - Simple facial recognition library.
- Python Kornia - (https://github.com/kornia/kornia/) - Open Source Differentiable Computer Vision Library for PyTorch.
- Python OpenCV - (https://opencv.org/) - Open Source Computer Vision Library.
- Python pytesseract - (https://github.com/madmaze/pytesseract) - A wrapper for [Google Tesseract OCR]] - (https://github.com/tesseract-ocr).
- Python SimpleCV - (https://github.com/sightmachine/SimpleCV) - An open source framework for building computer vision applications.
- Python tesserocr - (https://github.com/sirfz/tesserocr) - Another simple, Pillow-friendly, wrapper around the `tesseract-ocr` API for OCR.
Python Concurrency and Parallelism
Python Libraries for concurrent and parallel execution. Also see [awesome-asyncio - (https://github.com/timofurrer/awesome-asyncio)
- Python concurrent.futures - (https://docs.python.org/3/library/concurrent.futures.html) - (Python standard library) A high-level interface for asynchronously executing callables.
- Python eventlet - (http://eventlet.net/) - Asynchronous framework with WSGI support.
- Python gevent - (http://www.gevent.org/) - A coroutine-based Python networking library that uses [greenlet]] - (https://github.com/python-greenlet/greenlet).
- Python multiprocessing - (https://docs.python.org/3/library/multiprocessing.html) - (Python standard library) Process-based parallelism.
- Python scoop - (https://github.com/soravux/scoop) - Scalable Concurrent Operations in Python.
- Python uvloop - (https://github.com/MagicStack/uvloop) - Ultra fast implementation of `asyncio` Python event loop on top of `libuv`.
Python Configuration
Python Libraries for storing and parsing configuration option:
- Python configobj - (https://github.com/DiffSK/configobj) - INI file parser with validation.
- Python configparser - (https://docs.python.org/3/library/configparser.html) - (Python standard library) INI file parser.
- Python hydra - (https://github.com/facebookresearch/hydra) - Hydra is a framework for elegantly configuring complex applications.
- Python profig - (https://profig.readthedocs.io/en/latest/) - Config from multiple formats with value conversion.
- python-decouple - (https://github.com/henriquebastos/python-decouple) - Strict separation of settings from code.
Python Cryptography
- Python cryptography - (https://cryptography.io/en/latest/) - A package designed to expose cryptographic primitives and recipes to Python developers.
- Python paramiko - (https://github.com/paramiko/paramiko) - The leading native Python SSHv2 protocol library.
- Python passlib - (https://passlib.readthedocs.io/en/stable/) - Secure password storage/hashing library, very high level.
- Python pynacl - (https://github.com/pyca/pynacl) - Python binding to the Networking and Cryptography (NaCl) library.
Python Data Analysis
Python Libraries for data analyzing:
- Python AWS Data Wrangler - (https://github.com/awslabs/aws-data-wrangler) - Pandas on AWS.
- Python Blaze - (https://github.com/blaze/blaze) - NumPy and Pandas interface to Big Data.
- Python Open Mining - (https://github.com/mining/mining) - Business Intelligence (BI) in Pandas interface.
- Python Optimus - (https://github.com/ironmussa/Optimus) - Agile Data Science Workflows made easy with PySpark.
- Python Orange - (https://orange.biolab.si/) - Data mining, data visualization, analysis and machine learning through visual programming or scripts.
- Python Pandas - (http://pandas.pydata.org/) - A library providing high-performance, easy-to-use data structures and data analysis tools.
Python Data Validation
Python Libraries for validating data. Used for forms in many cases:
- Python Cerberus - (https://github.com/pyeve/cerberus) - A lightweight and extensible data validation library.
- Python colander - (https://docs.pylonsproject.org/projects/colander/en/latest/) - Validating and deserializing data obtained via XML, JSON, an HTML form post.
- Python jsonschema - (https://github.com/Julian/jsonschema) - An implementation of [JSON Schema]] - (http://json-schema.org/) for Python.
- Python schema - (https://github.com/keleshev/schema) - A library for validating Python data structures.
- Python Schematics - (https://github.com/schematics/schematics) - Data Structure Validation.
- Python valideer - (https://github.com/podio/valideer) - Lightweight extensible data validation and adaptation library.
- Python voluptuous - (https://github.com/alecthomas/voluptuous) - A Python data validation library.
Python Data Visualization
Python Libraries for visualizing data:
Also see awesome-javascript - (https://github.com/sorrycc/awesome-javascript#data-visualization)
- Python Altair - (https://github.com/altair-viz/altair) - Declarative statistical visualization library for Python.
- Python Bokeh - (https://github.com/bokeh/bokeh) - Interactive Web Plotting for Python.
- Python bqplot - (https://github.com/bloomberg/bqplot) - Interactive Plotting Library for the Jupyter Notebook.
- Python Cartopy - (https://github.com/SciTools/cartopy) - A cartographic python library with matplotlib support.
- Python Dash - (https://plot.ly/products/dash/) - Built on top of Flask, React and Plotly aimed at analytical web applications.
- Python diagrams - (https://github.com/mingrammer/diagrams) - Diagram as Code.
- Python Matplotlib - (http://matplotlib.org/) - A Python 2D plotting library.
- Python plotnine - (https://github.com/has2k1/plotnine) - A grammar of graphics for Python based on ggplot2.
- Python Pygal - (http://www.pygal.org/en/latest/) - A Python SVG Charts Creator.
- Python PyGraphviz - (https://pypi.org/project/pygraphviz/) - Python interface to [Graphviz]] - (http://www.graphviz.org/).
- Python PyQtGraph - (http://www.pyqtgraph.org/) - Interactive and realtime 2D/3D/Image plotting and science/engineering widgets.
- Python Seaborn - (https://github.com/mwaskom/seaborn) - Statistical data visualization using Matplotlib.
- Python VisPy - (https://github.com/vispy/vispy) - High-performance scientific visualization based on OpenGL.
Python Database
Python Databases implemented in Python:
- Python pickleDB - (https://github.com/patx/pickledb) - A simple and lightweight key-value store for Python.
- Python tinydb - (https://github.com/msiemens/tinydb) - A tiny, document-oriented database.
- Python ZODB - (https://github.com/zopefoundation/ZODB) - A native object database for Python. A key-value and object graph database.
Python Database Drivers
Python Libraries for connecting and operating databases:
Python MySQL: See also awesome-mysql - (http://shlomi-noach.github.io/awesome-mysql)
- Python mysqlclient - (https://github.com/PyMySQL/mysqlclient-python) - MySQL connector with Python 3 support ([mysql-python]] - (https://sourceforge.net/projects/mysql-python/) fork).
- Python PyMySQL - (https://github.com/PyMySQL/PyMySQL) - A pure Python MySQL driver compatible to mysql-python.
Python PostgreSQL: See also awesome-postgres - (https://github.com/dhamaniasad/awesome-postgres)
- Python psycopg2 - (http://initd.org/psycopg/) - The most popular PostgreSQL adapter for Python.
- Python queries - (https://github.com/gmr/queries) - A wrapper of the psycopg2 library for interacting with PostgreSQL.
Python SQlite: Se also awesome-sqlite - (https://github.com/planetopendata/awesome-sqlite)
- Python sqlite3 - (https://docs.python.org/3/library/sqlite3.html) - (Python standard library) SQlite interface compliant with DB-API 2.0
- Python SuperSQLite - (https://github.com/plasticityai/supersqlite) - A supercharged SQLite library built on top of [apsw]] - (https://github.com/rogerbinns/apsw).
Other Relational Databases:
- Python pymssql - (https://pymssql.readthedocs.io/en/latest/) - A simple database interface to Microsoft SQL Server.
- Python clickhouse-driver - (https://github.com/mymarilyn/clickhouse-driver) - Python driver with native interface for ClickHouse.
- Python cassandra-driver - (https://github.com/datastax/python-driver) - The Python Driver for
- Python happybase - (https://github.com/wbolster/happybase) - A developer-friendly library for
Apache HBase.
- Python kafka-python - (https://github.com/dpkp/kafka-python) - The Python client for Apache Kafka.
- Python py2neo - (https://py2neo.org/) - A client library and toolkit for working with Neo4j.
- Python pymongo - (https://github.com/mongodb/mongo-python-driver) - The official Python client for MongoDB.
- Python redis-py - (https://github.com/andymccurdy/redis-py) - The Python client for Redis.
- Python motor - (https://github.com/mongodb/motor) - The async Python driver for MongoDB.
Python Date and Time
Python Libraries for working with dates and times:
- Python Arrow - (https://arrow.readthedocs.io/en/latest/) - A Python library that offers a sensible and human-friendly approach to creating, manipulating, formatting and converting dates, times and timestamps.
- Python Chronyk - (https://github.com/KoffeinFlummi/Chronyk) - A Python 3 library for parsing human-written times and dates.
- Python dateutil - (https://github.com/dateutil/dateutil) - Extensions to the standard Python [datetime]] - (https://docs.python.org/3/library/datetime.html) module.
- Python delorean - (https://github.com/myusuf3/delorean/) - A library for clearing up the inconvenient truths that arise dealing with datetimes.
- Python maya - (https://github.com/timofurrer/maya) - Datetimes for Humans.
- Python moment - (https://github.com/zachwill/moment) - A Python library for dealing with dates/times. Inspired by [Moment.js]] - (http://momentjs.com/).
- Python Pendulum - (https://github.com/sdispater/pendulum) - Python datetimes made easy.
- Python PyTime - (https://github.com/shinux/PyTime) - An easy-to-use Python module which aims to operate date/time/datetime by string.
- Python pytz - (https://launchpad.net/pytz) - World timezone definitions, modern and historical. Brings the [tz database]] - (https://en.wikipedia.org/wiki/Tz_database) into Python.
- Python when.py - (https://github.com/dirn/When.py) - Providing user-friendly functions to help perform common date and time actions.
Python Debugging Tools
Python Libraries for debugging code:
- Python ipdb - (https://github.com/gotcha/ipdb) - IPython-enabled [pdb]] - (https://docs.python.org/3/library/pdb.html).
- Python pdb++ - (https://github.com/antocuni/pdb) - Another drop-in replacement for pdb.
- Python pudb - (https://github.com/inducer/pudb) - A full-screen, console-based Python debugger.
- Python wdb - (https://github.com/Kozea/wdb) - An improbable web debugger through WebSockets.
- Python lptrace - (https://github.com/khamidou/lptrace) - [strace]] - (http://man7.org/linux/man-pages/man1/strace.1.html) for Python programs.
- Python manhole - (https://github.com/ionelmc/python-manhole) - Debugging UNIX socket connections and present the stacktraces for all threads and an interactive prompt.
- Python pyringe - (https://github.com/google/pyringe) - Debugger capable of attaching to and injecting code into Python processes.
- python-hunter - (https://github.com/ionelmc/python-hunter) - A flexible code tracing toolkit.
- Python line_profiler - (https://github.com/rkern/line_profiler) - Line-by-line profiling.
- Python memory_profiler - (https://github.com/fabianp/memory_profiler) - Monitor Memory usage of Python code.
- Python py-spy - (https://github.com/benfred/py-spy) - A sampling profiler for Python programs. Written in Rust.
- Python pyflame - (https://github.com/uber/pyflame) - A ptracing profiler For Python.
- Python vprof - (https://github.com/nvdv/vprof) - Visual Python profiler.
Others:
- django-debug-toolbar - (https://github.com/jazzband/django-debug-toolbar) - Display various debug information for Django.
- django-devserver - (https://github.com/dcramer/django-devserver) - A drop-in replacement for Django's runserver.
- flask-debugtoolbar - (https://github.com/mgood/flask-debugtoolbar) - A port of the django-debug-toolbar to flask.
- Python icecream - (https://github.com/gruns/icecream) - Inspect variables, expressions, and program execution with a single, simple function call.
- Python pyelftools - (https://github.com/eliben/pyelftools) - Parsing and analyzing ELF files and DWARF debugging information.
Python Deep Learning
Python Frameworks for Neural Networks and Deep Learning. Also see awesome-deep-learning - (https://github.com/ChristosChristofidis/awesome-deep-learning)
- Python caffe - (https://github.com/BVLC/caffe) - A fast open framework for deep learning..
- Python keras - (https://github.com/keras-team/keras) - A high-level neural networks library and capable of running on top of either TensorFlow or Theano.
- Python mxnet - (https://github.com/dmlc/mxnet) - A deep learning framework designed for both efficiency and flexibility.
- Python pytorch - (https://github.com/pytorch/pytorch) - Tensors and Dynamic neural networks in Python with strong GPU acceleration.
- Python SerpentAI - (https://github.com/SerpentAI/SerpentAI) - Game agent framework. Use any video game as a deep learning sandbox.
- Python tensorflow - (https://github.com/tensorflow/tensorflow) - The most popular Deep Learning framework created by Google.
- Python Theano - (https://github.com/Theano/Theano) - A library for fast numerical computation.
Python DevOps Tools
Python Software and libraries for DevOps:
Python Configuration Management:
- Python ansible - (https://github.com/ansible/ansible) - A radically simple IT automation platform.
- Python cloudinit - (https://cloudinit.readthedocs.io/en/latest/) - A multi-distribution package that handles early initialization of a cloud instance.
- Python OpenStack - (https://www.openstack.org/) - Open source software for building private and public clouds.
- Python pyinfra - (https://github.com/Fizzadar/pyinfra) - A versatile CLI tools and python libraries to automate infrastructure.
- Python saltstack - (https://github.com/saltstack/salt) - Infrastructure automation and management system.
- Python cuisine - (https://github.com/sebastien/cuisine) - Chef-like functionality for Fabric.
- Python fabric - (https://github.com/fabric/fabric) - A simple, Pythonic tool for remote execution and deployment.
- Python fabtools - (https://github.com/fabtools/fabtools) - Tools for writing awesome Fabric files.
- Python honcho - (https://github.com/nickstenning/honcho) - A Python clone of [Foreman]] - (https://github.com/ddollar/foreman), for managing Procfile-based applications.
- Python supervisor - (https://github.com/Supervisor/supervisor) - Supervisor process control system for UNIX.
- Python psutil - (https://github.com/giampaolo/psutil) - A cross-platform process and system utilities module.
- Python BorgBackup - (https://www.borgbackup.org/) - A deduplicating archiver with compression and encryption.
Others:
- Python docker-compose - (https://docs.docker.com/compose/) - Fast, isolated development environments using [Docker]] - (https://www.docker.com/).
Python Distributed Computing
Python Frameworks and libraries for Distributed Computing:
- Python dask - (https://github.com/dask/dask) - A flexible parallel computing library for analytic computing.
- Python luigi - (https://github.com/spotify/luigi) - A module that helps you build complex pipelines of batch jobs.
- Python mrjob - (https://github.com/Yelp/mrjob) - Run MapReduce jobs on Hadoop or Amazon Web Services.
- Python PySpark - (https://pypi.org/project/pyspark/) - [Apache Spark]] - (https://spark.apache.org/) Python API.
- Python Ray - (https://github.com/ray-project/ray/) - A system for parallel and distributed Python that unifies the machine learning ecosystem.
- Python faust - (https://github.com/robinhood/faust) - A stream processing library, porting the ideas from [Kafka Streams]] - (https://kafka.apache.org/documentation/streams/) to Python.
- Python streamparse - (https://github.com/Parsely/streamparse) - Run Python code against real-time streams of data via [Apache Storm]] - (http://storm.apache.org/).
Python Distribution
Python Libraries to create packaged executables for release distribution:
- Python dh-virtualenv - (https://github.com/spotify/dh-virtualenv) - Build and distribute a virtualenv as a Debian package.
- Python Nuitka - (http://nuitka.net/) - Compile scripts, modules, packages to an executable or extension module.
- Python py2app - (http://pythonhosted.org/py2app/) - Freezes Python scripts (Mac OS X).
- Python py2exe - (http://www.py2exe.org/) - Freezes Python scripts (Windows).
- Python pyarmor - (https://github.com/dashingsoft/pyarmor) - A tool used to obfuscate python scripts, bind obfuscated scripts to fixed machine or expire obfuscated scripts.
- Python PyInstaller - (https://github.com/pyinstaller/pyinstaller) - Converts Python programs into stand-alone executables (cross-platform).
- Python pynsist - (http://pynsist.readthedocs.io/en/latest/) - A tool to build Windows installers, installers bundle Python itself.
- Python shiv - (https://github.com/linkedin/shiv) - A command line utility for building fully self-contained zipapps (PEP 441), but with all their dependencies included.
Python Documentation
Python Libraries for generating project documentation:
- Python sphinx - (https://github.com/sphinx-doc/sphinx/) - Python Documentation generator.
- Python pdoc - (https://github.com/mitmproxy/pdoc) - Epydoc replacement to auto generate API documentation for Python libraries.
- Python pycco - (https://github.com/pycco-docs/pycco) - The literate-programming-style documentation generator.
Python Downloader
Python Libraries for downloading:
- Python akshare - (https://github.com/jindaxiang/akshare) - A financial data interface library, built for human beings!
- Python s3cmd - (https://github.com/s3tools/s3cmd) - A command line tool for managing Amazon S3 and CloudFront.
- Python s4cmd - (https://github.com/bloomreach/s4cmd) - Super S3 command line tool, good for higher performance.
- Python you-get - (https://you-get.org/) - A YouTube/Youku/Niconico video downloader written in Python 3.
- Python youtube-dl - (https://rg3.github.io/youtube-dl/) - A small command-line program to download videos from YouTube.
Python E-commerce
Python Frameworks and libraries for e-commerce and payments:
- Python alipay - (https://github.com/lxneng/alipay) - Unofficial Alipay API for Python.
- Python Cartridge - (https://github.com/stephenmcd/cartridge) - A shopping cart app built using the Mezzanine.
- django-oscar - (http://oscarcommerce.com/) - An open-source e-commerce framework for Django.
- django-shop - (https://github.com/awesto/django-shop) - A Django based shop system.
- Python forex-python - (https://github.com/MicroPyramid/forex-python) - Foreign exchange rates, Bitcoin price index and currency conversion.
- Python merchant - (https://github.com/agiliq/merchant) - A Django app to accept payments from various payment processors.
- Python money - (https://github.com/carlospalol/money) - `Money` class with optional CLDR-backed locale-aware formatting and an extensible currency exchange.
- python-currencies - (https://github.com/Alir3z4/python-currencies) - Display money format and its filthy currencies.
- Python saleor - (http://getsaleor.com/) - An e-commerce storefront for Django.
- Python shoop - (https://www.shuup.com/en/) - An open source E-Commerce platform based on Django.
Python Editor Plugins and IDEs
- Python elpy - (https://github.com/jorgenschaefer/elpy) - Emacs Python Development Environment.
- Python anaconda - (https://github.com/DamnWidget/anaconda) - Anaconda turns your Sublime Text 3 in a full featured Python development IDE.
- Python SublimeJEDI - (https://github.com/srusskih/SublimeJEDI) - A Sublime Text plugin to the awesome auto-complete library Jedi.
- Python jedi-vim - (https://github.com/davidhalter/jedi-vim) - Vim bindings for the Jedi auto-completion library for Python.
- python-mode - (https://github.com/python-mode/python-mode) - An all in one plugin for turning Vim into a Python IDE.
- Python YouCompleteMe - (https://github.com/Valloric/YouCompleteMe) - Includes [Jedi]] - (https://github.com/davidhalter/jedi)-based completion engine for Python.
- Python PTVS - (https://github.com/Microsoft/PTVS) - Python Tools for Visual Studio.
- Python VSCode - (https://marketplace.visualstudio.com/items?itemName=ms-python.python) - The official VSCode extension with rich support for Python.
- Python PyCharm - (https://www.jetbrains.com/pycharm/) - Commercial Python IDE by JetBrains. Has free community edition available.
- Python spyder - (https://github.com/spyder-ide/spyder) - Open Source Python IDE.
Python Email
Python Libraries for sending and parsing email:
- Python modoboa - (https://github.com/modoboa/modoboa) - A mail hosting and management platform including a modern Web UI.
- Python salmon - (https://github.com/moggers87/salmon) - A Python Mail Server.
- Python imbox - (https://github.com/martinrusev/imbox) - Python IMAP for Humans.
- Python yagmail - (https://github.com/kootenpv/yagmail) - Yet another Gmail/SMTP client.
- Others
- Python flanker - (https://github.com/mailgun/flanker) - An email address and Mime parsing library.
- Python mailer - (https://github.com/marrow/mailer) - High-performance extensible mail delivery framework.
Python Enterprise Application Integrations
Python Platforms and tools for systems integrations in enterprise environments
- Python Zato - (https://zato.io) - ESB, SOA, REST, APIs and Cloud Integrations in Python.
Python Environment Management
Python Libraries for Python version and virtual environment management:
- Python pyenv - (https://github.com/pyenv/pyenv) - Simple Python version management.
- Python virtualenv - (https://github.com/pypa/virtualenv) - A tool to create isolated Python environments.
Python Files
Python Libraries for file manipulation and MIME type detection:
- Python mimetypes - (https://docs.python.org/3/library/mimetypes.html) - (Python standard library) Map filenames to MIME types.
- Python path.py - (https://github.com/jaraco/path.py) - A module wrapper for [os.path]] - (https://docs.python.org/3/library/os.path.html).
- Python pathlib - (https://docs.python.org/3/library/pathlib.html) - (Python standard library) An cross-platform, object-oriented path library.
- Python PyFilesystem2 - (https://github.com/pyfilesystem/pyfilesystem2) - Python's filesystem abstraction layer.
- python-magic - (https://github.com/ahupp/python-magic) - A Python interface to the libmagic file type identification library.
- Python Unipath - (https://github.com/mikeorr/Unipath) - An object-oriented approach to file/directory operations.
- Python watchdog - (https://github.com/gorakhargosh/watchdog) - API and shell utilities to monitor file system events.
Python Foreign Function Interface
Python Libraries for providing foreign function interface:
- Python cffi - (https://pypi.org/project/cffi/) - Foreign Function Interface for Python calling C code.
- Python ctypes - (https://docs.python.org/3/library/ctypes.html) - (Python standard library) Foreign Function Interface for Python calling C code.
- Python PyCUDA - (https://mathema.tician.de/software/pycuda/) - A Python wrapper for Nvidia's CUDA API.
- Python SWIG - (http://www.swig.org/Doc1.3/Python.html) - Simplified Wrapper and Interface Generator.
Python Forms
Python Libraries for working with forms:
- Python Deform - (https://github.com/Pylons/deform) - Python HTML form generation library influenced by the formish form generation library.
- django-bootstrap3 - (https://github.com/dyve/django-bootstrap3) - Bootstrap 3 integration with Django.
- django-bootstrap4 - (https://github.com/zostera/django-bootstrap4) - Bootstrap 4 integration with Django.
- django-crispy-forms - (https://github.com/django-crispy-forms/django-crispy-forms) - A Django app which lets you create beautiful forms in a very elegant and DRY way.
- django-remote-forms - (https://github.com/WiserTogether/django-remote-forms) - A platform independent Django form serializer.
- Python WTForms - (https://github.com/wtforms/wtforms) - A flexible forms validation and rendering library.
Python Functional Programming
Python Functional Programming with Python:
- Python Coconut - (https://github.com/evhub/coconut) - A variant of Python built for simple, elegant, Pythonic functional programming.
- Python CyToolz - (https://github.com/pytoolz/cytoolz/) - Cython implementation of `Toolz`: High performance functional utilities.
- Python fn.py - (https://github.com/kachayev/fn.py) - Functional programming in Python: implementation of missing features to enjoy FP.
- Python funcy - (https://github.com/Suor/funcy) - A fancy and practical functional tools.
- Python more-itertools - (https://github.com/erikrose/more-itertools) - More routines for operating on iterables, beyond `itertools`.
- Python returns - (https://github.com/dry-python/returns) - A set of type-safe monads, transformers, and composition utilities.
- Python Toolz - (https://github.com/pytoolz/toolz) - A collection of functional utilities for iterators, functions, and dictionaries.
Python GUI Development
Python Libraries for working with graphical user interface applications:
- Python curses - (https://docs.python.org/3/library/curses.html) - Built-in wrapper for [ncurses]] - (http://www.gnu.org/software/ncurses/) used to create terminal GUI applications.
- Python Eel - (https://github.com/ChrisKnott/Eel) - A library for making simple Electron-like offline HTML/JS GUI apps.
- Python enaml - (https://github.com/nucleic/enaml) - Creating beautiful user-interfaces with Declarative Syntax like QML.
- Python Flexx - (https://github.com/zoofIO/flexx) - Flexx is a pure Python toolkit for creating GUI's, that uses web technology for its rendering.
- Python Gooey - (https://github.com/chriskiehl/Gooey) - Turn command line programs into a full GUI application with one line.
- Python kivy - (https://kivy.org/) - A library for creating NUI applications, running on Windows, Linux, Mac OS X, Android and iOS.
- Python pyglet - (https://github.com/pyglet/pyglet) - A cross-platform windowing and multimedia library for Python.
- Python PyGObject - (https://wiki.gnome.org/Projects/PyGObject) - Python Bindings for GLib/GObject/GIO/GTK+ (GTK+3).
- Python PyQt - (https://riverbankcomputing.com/software/pyqt/intro) - Python bindings for the [Qt]] - (https://www.qt.io/) cross-platform application and UI framework.
- Python PySimpleGUI - (https://github.com/PySimpleGUI/PySimpleGUI) - Wrapper for tkinter, Qt, WxPython and Remi.
- Python pywebview - (https://github.com/r0x0r/pywebview/) - A lightweight cross-platform native wrapper around a webview component.
- Python Tkinter - (https://wiki.python.org/moin/TkInter) - Tkinter is Python's de-facto standard GUI package.
- Python Toga - (https://github.com/pybee/toga) - A Python native, OS native GUI toolkit.
- Python urwid - (http://urwid.org/) - A library for creating terminal GUI applications with strong support for widgets, events, rich colors, etc.
- Python wxPython - (https://wxpython.org/) - A blending of the wxWidgets C++ class library with the Python.
- Python DearPyGui - (https://github.com/RaylockLLC/DearPyGui/) - A Simple GPU accelerated Python GUI framework
Python GraphQL
Python Libraries for working with [[GraphQL:
- Python graphene - (https://github.com/graphql-python/graphene/) - GraphQL framework for Python.
- Python tartiflette-aiohttp - (https://github.com/tartiflette/tartiflette-aiohttp/) - An `aiohttp`-based wrapper for Tartiflette to expose GraphQL APIs over HTTP.
- Python tartiflette-asgi - (https://github.com/tartiflette/tartiflette-asgi/) - ASGI support for the Tartiflette GraphQL engine.
- Python tartiflette - (https://tartiflette.io) - SDL-first GraphQL engine implementation for Python 3.6+ and asyncio.
Python Game Development
Python game development libraries:
- Python Arcade - (https://api.arcade.academy/en/latest/) - Arcade is a modern Python framework for crafting games with compelling graphics and sound.
- Python Cocos2d - (http://cocos2d.org/) - cocos2d is a framework for building 2D games, demos, and other graphical/interactive applications.
- Python Harfang3D - (http://www.harfang3d.com) - Python framework for 3D, VR and game development.
- Python Panda3D - (https://www.panda3d.org/) - 3D game engine developed by Disney.
- Python Pygame - (http://www.pygame.org/news.html) - Pygame is a set of Python modules designed for writing games.
- Python PyOgre - (http://www.ogre3d.org/tikiwiki/PyOgre) - Python bindings for the Ogre 3D render engine, can be used for games, simulations, anything 3D.
- Python PyOpenGL - (http://pyopengl.sourceforge.net/) - Python ctypes bindings for OpenGL and it's related APIs.
- Python PySDL2 - (https://pysdl2.readthedocs.io) - A ctypes based wrapper for the SDL2 library.
- Python RenPy - (https://www.renpy.org/) - A Visual Novel engine.
Python Geolocation
Python Libraries for geocoding addresses and working with latitudes and longitudes:
- django-countries - (https://github.com/SmileyChris/django-countries) - A Django app that provides a country field for models and forms.
- Python GeoDjango - (https://docs.djangoproject.com/en/dev/ref/contrib/gis/) - A world-class geographic web framework.
- Python GeoIP - (https://github.com/maxmind/geoip-api-python) - Python API for MaxMind GeoIP Legacy Database.
- Python geojson - (https://github.com/frewsxcv/python-geojson) - Python bindings and utilities for GeoJSON.
- Python geopy - (https://github.com/geopy/geopy) - Python Geocoding Toolbox.
Python HTML Manipulation
Python Libraries for working with HTML and XML:
- Python BeautifulSoup - (https://www.crummy.com/software/BeautifulSoup/bs4/doc/) - Providing Pythonic idioms for iterating, searching, and modifying HTML or XML.
- Python bleach - (https://github.com/mozilla/bleach) - A whitelist-based HTML sanitization and text linkification library.
- Python cssutils - (https://pypi.org/project/cssutils/) - A CSS library for Python.
- Python html5lib - (https://github.com/html5lib/html5lib-python) - A standards-compliant library for parsing and serializing HTML documents and fragments.
- Python lxml - (http://lxml.de/) - A very fast, easy-to-use and versatile library for handling HTML and XML.
- Python MarkupSafe - (https://github.com/pallets/markupsafe) - Implements a XML/HTML/XHTML Markup safe string for Python.
- Python pyquery - (https://github.com/gawel/pyquery) - A jQuery-like library for parsing HTML.
- Python untangle - (https://github.com/stchris/untangle) - Converts XML documents to Python objects for easy access.
- Python WeasyPrint - (http://weasyprint.org) - A visual rendering engine for HTML and CSS that can export to PDF.
- Python xmldataset - (https://xmldataset.readthedocs.io/en/latest/) - Simple XML Parsing.
- Python xmltodict - (https://github.com/martinblech/xmltodict) - Working with XML feel like you are working with JSON.
Python HTTP Clients
Python Libraries for working with HTTP:
- Python grequests - (https://github.com/spyoungtech/grequests) - requests + gevent for asynchronous HTTP requests.
- Python httplib2 - (https://github.com/httplib2/httplib2) - Comprehensive HTTP client library.
- Python httpx - (https://github.com/encode/httpx) - A next generation HTTP client for Python.
- Python requests - (https://github.com/psf/requests) - HTTP Requests for Humans.
- Python treq - (https://github.com/twisted/treq) - Python requests like API built on top of Twisted's HTTP client.
- Python urllib3 - (https://github.com/shazow/urllib3) - A HTTP library with thread-safe connection pooling, file post support, sanity friendly.
Python Hardware
Python Libraries for programming with hardware:
- Python ino - (http://inotool.org/) - Command line toolkit for working with [Arduino]] - (https://www.arduino.cc/).
- Python keyboard - (https://github.com/boppreh/keyboard) - Hook and simulate global keyboard events on Windows and Linux.
- Python mouse - (https://github.com/boppreh/mouse) - Hook and simulate global mouse events on Windows and Linux.
- Python Pingo - (http://www.pingo.io/) - Pingo provides a uniform API to program devices like the Raspberry Pi, pcDuino, Intel Galileo, etc.
- Python PyUserInput - (https://github.com/SavinaRoja/PyUserInput) - A module for cross-platform control of the mouse and keyboard.
- Python scapy - (https://github.com/secdev/scapy) - A brilliant packet manipulation library.
Python Image Processing
Python Libraries for manipulating images:
- Python hmap - (https://github.com/rossgoodwin/hmap) - Image histogram remapping.
- Python imgSeek - (https://sourceforge.net/projects/imgseek/) - A project for searching a collection of images using visual similarity.
- Python nude.py - (https://github.com/hhatto/nude.py) - Nudity detection.
- Python pagan - (https://github.com/daboth/pagan) - Retro identicon (Avatar) generation based on input string and hash.
- Python pillow - (https://github.com/python-pillow/Pillow) - Pillow is the friendly [PIL]] - (http://www.pythonware.com/products/pil/) fork.
- python-barcode - (https://github.com/WhyNotHugo/python-barcode) - Create barcodes in Python with no extra dependencies.
- Python pygram - (https://github.com/ajkumar25/pygram) - Instagram-like image filters.
- Python PyMatting - (http://github.com/pymatting/pymatting) - A library for alpha matting.
- python-qrcode - (https://github.com/lincolnloop/python-qrcode) - A pure Python QR Code generator.
- Python pywal - (https://github.com/dylanaraps/pywal) - A tool that generates color schemes from images.
- Python pyvips - (https://github.com/libvips/pyvips) - A fast image processing library with low memory needs.
- Python Quads - (https://github.com/fogleman/Quads) - Computer art based on quadtrees.
- Python scikit-image - (http://scikit-image.org/) - A Python library for (scientific) image processing.
- Python thumbor - (https://github.com/thumbor/thumbor) - A smart imaging service. It enables on-demand crop, re-sizing and flipping of images.
- Python wand - (https://github.com/dahlia/wand) - Python bindings for [MagickWand]] - (http://www.imagemagick.org/script/magick-wand.php), C API for ImageMagick.
Python Implementations
- Python CLPython - (https://github.com/metawilm/cl-python) - Implementation of the Python programming language written in Common Lisp.
- Python CPython - (https://github.com/python/cpython) - **Default, most widely used implementation of the Python programming language written in C.**
- Python Cython - (http://cython.org/) - Optimizing Static Compiler for Python.
- Python Grumpy - (https://github.com/google/grumpy) - More compiler than interpreter as more powerful CPython2.7 replacement (alpha).
- Python IronPython - (https://github.com/IronLanguages/ironpython3) - Implementation of the Python programming language written in C#.
- Python Jython - (https://hg.python.org/jython) - Implementation of Python programming language written in Java for the JVM.
- Python MicroPython - (https://github.com/micropython/micropython) - A lean and efficient Python programming language implementation.
- Python Numba - (http://numba.pydata.org/) - Python JIT compiler to LLVM aimed at scientific Python.
- Python PeachPy - (https://github.com/Maratyszcza/PeachPy) - x86-64 assembler embedded in Python.
- Python Pyjion - (https://github.com/Microsoft/Pyjion) - A JIT for Python based upon CoreCLR.
- Python PyPy - (https://foss.heptapod.net/pypy/pypy) - A very fast and compliant implementation of the Python language.
- Python Pyston - (https://github.com/dropbox/pyston) - A Python implementation using JIT techniques.
- Python Stackless Python - (https://github.com/stackless-dev/stackless) - An enhanced version of the Python programming language.
Python Interactive Interpreter
Interactive Python interpreters (REPL):
- Python bpython - (https://github.com/bpython/bpython) - A fancy interface to the Python interpreter.
- Python Jupyter Notebook (IPython) - (https://jupyter.org) - A rich toolkit to help you make the most out of using Python interactively.
- Python ptpython - (https://github.com/jonathanslenders/ptpython) - Advanced Python REPL built on top of the [python-prompt-toolkit]] - (https://github.com/jonathanslenders/python-prompt-toolkit).
Python Internationalization
Python Libraries for working with i18n:
- Python Babel - (http://babel.pocoo.org/en/latest/) - An internationalization library for Python.
- Python PyICU - (https://github.com/ovalhub/pyicu) - A wrapper of International Components for Unicode C++ library ([ICU]] - (http://site.icu-project.org/)).
Python Job Schedulers
Python Libraries for scheduling jobs:
- Python Airflow - (https://airflow.apache.org/) - Airflow is a platform to programmatically author, schedule and monitor workflows.
- Python APScheduler - (http://apscheduler.readthedocs.io/en/latest/) - A light but powerful in-process task scheduler that lets you schedule functions.
- django-schedule - (https://github.com/thauber/django-schedule) - A calendaring app for Django.
- Python doit - (http://pydoit.org/) - A task runner and build tool.
- Python gunnery - (https://github.com/gunnery/gunnery) - Multipurpose task execution tool for distributed systems with web-based interface.
- Python Joblib - (https://joblib.readthedocs.io/) - A set of tools to provide lightweight pipelining in Python.
- Python Plan - (https://github.com/fengsp/plan) - Writing crontab file in Python like a charm.
- Python Prefect - (https://github.com/PrefectHQ/prefect) - A modern workflow orchestration framework that makes it easy to build, schedule and monitor robust data pipelines.
- Python schedule - (https://github.com/dbader/schedule) - Python job scheduling for humans.
- Python Spiff - (https://github.com/knipknap/SpiffWorkflow) - A powerful workflow engine implemented in pure Python.
- Python TaskFlow - (https://docs.openstack.org/developer/taskflow/) - A Python library that helps to make task execution easy, consistent and reliable.
Python Logging
Python Libraries for generating and working with logs:
- Python logbook - (http://logbook.readthedocs.io/en/stable/) - Logging replacement for Python.
- Python logging - (https://docs.python.org/3/library/logging.html) - (Python standard library) Logging facility for Python.
- Python loguru - (https://github.com/Delgan/loguru) - Library which aims to bring enjoyable logging in Python.
- Python sentry-python - (https://github.com/getsentry/sentry-python) - Sentry SDK for Python.
- Python structlog - (https://www.structlog.org/en/stable/) - Structured logging made easy.
Python Machine Learning
Python Libraries for Machine Learning. Also see awesome-machine-learning - (https://github.com/josephmisiti/awesome-machine-learning#python)
- Python gym - (https://github.com/openai/gym) - A toolkit for developing and comparing reinforcement learning algorithms.
- Python H2O - (https://github.com/h2oai/h2o-3) - Open Source Fast Scalable Machine Learning Platform.
- Python Metrics - (https://github.com/benhamner/Metrics) - Machine learning evaluation metrics.
- Python NuPIC - (https://github.com/numenta/nupic) - Numenta Platform for Intelligent Computing.
- Python scikit-learn - (http://scikit-learn.org/) - The most popular Python library for Machine Learning.
- Python Spark ML - (http://spark.apache.org/docs/latest/ml-guide.html) - [Apache Spark]] - (http://spark.apache.org/)'s scalable Machine Learning library.
- Python vowpal_porpoise - (https://github.com/josephreisinger/vowpal_porpoise) - A lightweight Python wrapper for [Vowpal Wabbit]] - (https://github.com/JohnLangford/vowpal_wabbit/).
- Python xgboost - (https://github.com/dmlc/xgboost) - A scalable, portable, and distributed gradient boosting library.
- Python MindsDB - (https://github.com/mindsdb/mindsdb) - MindsDB is an open source AI layer for existing databases that allows you to effortlessly develop, train and deploy state-of-the-art machine learning models using standard queries.
Python Microsoft Windows
Python programming on Microsoft Windows:
- Python(x,y) - (http://python-xy.github.io/) - Scientific-applications-oriented Python Distribution based on Qt and Spyder.
- pythonlibs - (http://www.lfd.uci.edu/~gohlke/pythonlibs/) - Unofficial Windows binaries for Python extension packages.
- PythonNet - (https://github.com/pythonnet/pythonnet) - Python Integration with the .NET Common Language Runtime (CLR).
- Python PyWin32 - (https://github.com/mhammond/pywin32) - Python Extensions for Windows.
- Python WinPython - (https://winpython.github.io/) - Portable development environment for Windows 7/8.
Python Miscellaneous
Python Useful libraries or tools that don't fit in obvious categories above:
- Python blinker - (https://github.com/jek/blinker) - A fast Python in-process signal/event dispatching system.
- Python boltons - (https://github.com/mahmoud/boltons) - A set of pure-Python utilities.
- Python itsdangerous - (https://github.com/pallets/itsdangerous) - Various helpers to pass trusted data to untrusted environments.
- Python magenta - (https://github.com/magenta/magenta) - A tool to generate music and art using artificial intelligence.
- Python pluginbase - (https://github.com/mitsuhiko/pluginbase) - A simple but flexible plugin system for Python.
- Python tryton - (http://www.tryton.org/) - A general purpose business framework.
Python Natural Language Processing
Python Libraries for working with human languages:
General:
- Python gensim - (https://github.com/RaRe-Technologies/gensim) - Topic Modeling for Humans.
- Python langid.py - (https://github.com/saffsd/langid.py) - Stand-alone language identification system.
- Python nltk - (http://www.nltk.org/) - A leading platform for building Python programs to work with human language data.
- Python pattern - (https://github.com/clips/pattern) - A web mining module.
- Python polyglot - (https://github.com/aboSamoor/polyglot) - Natural language pipeline supporting hundreds of languages.
- Python pytext - (https://github.com/facebookresearch/pytext) - A natural language modeling framework based on PyTorch.
- Python PyTorch-NLP - (https://github.com/PetrochukM/PyTorch-NLP) - A toolkit enabling rapid deep learning NLP prototyping for research.
- Python spacy - (https://spacy.io/) - A library for industrial-strength natural language processing in Python and Cython.
- Python Stanza - (https://github.com/stanfordnlp/stanza) - The Stanford NLP Group's official Python library, supporting 60+ languages.
- Python funNLP - (https://github.com/fighting41love/funNLP) - A collection of tools and datasets for Chinese NLP.
- Python jieba - (https://github.com/fxsjy/jieba) - The most popular Chinese text segmentation library.
- Python pkuseg-python - (https://github.com/lancopku/pkuseg-python) - A toolkit for Chinese word segmentation in various domains.
- Python snownlp - (https://github.com/isnowfy/snownlp) - A library for processing Chinese text.
Python Network Virtualization
Python Tools and libraries for Virtual Networking and SDN (Software Defined Networking):
- Python mininet - (https://github.com/mininet/mininet) - A popular network emulator and API written in Python.
- Python napalm - (https://github.com/napalm-automation/napalm) - Cross-vendor API to manipulate network devices.
- Python pox - (https://github.com/noxrepo/pox) - A Python-based SDN control applications, such as OpenFlow SDN controllers.
Python News Feed
Python Libraries for building user's activities:
- django-activity-stream - (https://github.com/justquick/django-activity-stream) - Generating generic activity streams from the actions on your site.
- Python Stream Framework - (https://github.com/tschellenbach/Stream-Framework) - Building news feed and notification systems using Cassandra and Redis.
Python ORM
Python Libraries that implement Object-Relational Mapping or data mapping techniques:
Python and Relational Databases:
- Django Models - (https://docs.djangoproject.com/en/dev/topics/db/models/) - The Django ORM.
- Python SQLAlchemy - (https://www.sqlalchemy.org/) - The Python SQL Toolkit and Object Relational Mapper.
- Python dataset - (https://github.com/pudo/dataset) - Store Python dicts in a database - works with SQLite, MySQL, and PostgreSQL.
- Python orator - (https://github.com/sdispater/orator) - The Orator ORM provides a simple yet beautiful ActiveRecord implementation.
- Python orm - (https://github.com/encode/orm) - An async ORM.
- Python peewee - (https://github.com/coleifer/peewee) - A small, expressive ORM.
- Python pony - (https://github.com/ponyorm/pony/) - ORM that provides a generator-oriented interface to SQL.
- Python pydal - (https://github.com/web2py/pydal/) - A pure Python Database Abstraction Layer.
- Python hot-redis - (https://github.com/stephenmcd/hot-redis) - Rich Python data types for Redis.
- Python mongoengine - (https://github.com/MongoEngine/mongoengine) - A Python Object-Document-Mapper for working with MongoDB.
- Python PynamoDB - (https://github.com/pynamodb/PynamoDB) - A Pythonic interface for [Amazon DynamoDB]] - (https://aws.amazon.com/dynamodb/).
- Python redisco - (https://github.com/kiddouk/redisco) - A Python Library for Simple Models and Containers Persisted in Redis.
Python Package Management
Python Libraries for package and dependency management:
- Python pip - (https://pip.pypa.io/en/stable/) - The package installer for Python.
- Python pip-tools - (https://github.com/jazzband/pip-tools) - A set of tools to keep your pinned Python dependencies fresh.
- Python conda - (https://github.com/conda/conda/) - Cross-platform, Python-agnostic binary package manager.
- Python poetry - (https://github.com/sdispater/poetry) - Python dependency management and packaging made easy.
Python Package Repositories
Python Local PyPI repository server and proxies:
- Python bandersnatch - (https://github.com/pypa/bandersnatch/) - PyPI mirroring tool provided by Python Packaging Authority (PyPA).
- Python devpi - (https://github.com/devpi/devpi) - PyPI server and packaging/testing/release tool.
- Python localshop - (https://github.com/jazzband/localshop) - Local PyPI server (custom packages and auto-mirroring of pypi).
- Python warehouse - (https://github.com/pypa/warehouse) - Next generation Python Package Repository (PyPI).
Python Penetration Testing
Python Frameworks and tools for penetration testing:
- Python fsociety - (https://github.com/Manisso/fsociety) - A Penetration testing framework.
- Python setoolkit - (https://github.com/trustedsec/social-engineer-toolkit) - A toolkit for social engineering.
- Python sqlmap - (https://github.com/sqlmapproject/sqlmap) - Automatic SQL injection and database takeover tool.
Python Permissions
Python Libraries that allow or deny users access to data or functionality:
- django-guardian - (https://github.com/django-guardian/django-guardian) - Implementation of per object permissions for Django 1.2+
- django-rules - (https://github.com/dfunckt/django-rules) - A tiny but powerful app providing object-level permissions to Django, without requiring a database.
Python Processes
Python Libraries for starting and communicating with OS processes:
- Python delegator.py - (https://github.com/amitt001/delegator.py) - [Subprocesses]] - (https://docs.python.org/3/library/subprocess.html) for Humans 2.0.
- Python sarge - (https://sarge.readthedocs.io/en/latest/) - Yet another wrapper for subprocess.
- Python sh - (https://github.com/amoffat/sh) - A full-fledged subprocess replacement for Python.
Python Recommender Systems
Python Libraries for building recommender systems:
- Python annoy - (https://github.com/spotify/annoy) - Approximate Nearest Neighbors in C++/Python optimized for memory usage.
- Python fastFM - (https://github.com/ibayer/fastFM) - A library for Factorization Machines.
- Python implicit - (https://github.com/benfred/implicit) - A fast Python implementation of collaborative filtering for implicit datasets.
- Python libffm - (https://github.com/guestwalk/libffm) - A library for Field-aware Factorization Machine (FFM).
- Python lightfm - (https://github.com/lyst/lightfm) - A Python implementation of a number of popular recommendation algorithms.
- Python spotlight - (https://github.com/maciejkula/spotlight) - Deep recommender models using PyTorch.
- Python Surprise - (https://github.com/NicolasHug/Surprise) - A scikit for building and analyzing recommender systems.
- Python tensorrec - (https://github.com/jfkirk/tensorrec) - A Recommendation Engine Framework in TensorFlow.
Python Refactoring
Python Refactoring tools and libraries for Python:
* [[Python Bicycle Repair Man]] - (http://bicyclerepair.sourceforge.net/) - Bicycle Repair Man, a refactoring tool for Python. * [[Python Bowler]] - (https://pybowler.io/) - Safe code refactoring for modern Python. * [[Python Rope]] - (https://github.com/python-rope/rope) - Rope is a python refactoring library.
Python RESTful API
Python Libraries for building RESTful APIs:
- django-rest-framework - (http://www.django-rest-framework.org/) - A powerful and flexible toolkit to build web APIs.
- django-tastypie - (http://tastypieapi.org/) - Creating delicious APIs for Django apps.
- Python eve - (https://github.com/pyeve/eve) - REST API framework powered by Flask, MongoDB and good intentions.
- flask-api - (https://github.com/flask-api/flask-api) - Browsable Web APIs for Flask.
- flask-restful - (https://github.com/flask-restful/flask-restful) - Quickly building REST APIs for Flask.
- Python cornice - (https://github.com/Cornices/cornice) - A RESTful framework for Pyramid.
- Framework agnostic
- Python apistar - (https://github.com/encode/apistar) - A smart Web API framework, designed for Python 3.
- Python falcon - (https://github.com/falconry/falcon) - A high-performance framework for building cloud APIs and web app backends.
- Python fastapi - (https://github.com/tiangolo/fastapi) - A modern, fast, web framework for building APIs with Python 3.6+ based on standard Python type hints.
- Python hug - (https://github.com/hugapi/hug) - A Python 3 framework for cleanly exposing APIs.
- Python sandman2 - (https://github.com/jeffknupp/sandman2) - Automated REST APIs for existing database-driven systems.
- Python sanic - (https://github.com/huge-success/sanic) - A Python 3.6+ web server and web framework that's written to go fast.
- Python vibora - (https://vibora.io/) - Fast, efficient and asynchronous Web framework inspired by Flask.
Python Robotics
Python Libraries for robotics:
- PythonRobotics - (https://github.com/AtsushiSakai/PythonRobotics) - This is a compilation of various robotics algorithms with visualizations.
- Python rospy - (http://wiki.ros.org/rospy) - This is a library for ROS (Robot Operating System).
Python RPC Servers
Python RPC-compatible servers:
- Python RPyC - (https://github.com/tomerfiliba/rpyc) (Remote Python Call) - A transparent and symmetric RPC library for Python
- Python zeroRPC - (https://github.com/0rpc/zerorpc-python) - zerorpc is a flexible RPC implementation based on [ZeroMQ]] - (http://zeromq.org/) and [MessagePack]] - (http://msgpack.org/).
Python Science
Python Libraries for scientific computing. Also see [Python-for-Scientists - (https://github.com/TomNicholas/Python-for-Scientists)
- Python astropy - (http://www.astropy.org/) - A community Python library for Astronomy.
- Python bcbio-nextgen - (https://github.com/chapmanb/bcbio-nextgen) - Providing best-practice pipelines for fully automated high throughput sequencing analysis.
- Python bccb - (https://github.com/chapmanb/bcbb) - Collection of useful code related to biological analysis.
- Python Biopython - (http://biopython.org/wiki/Main_Page) - Biopython is a set of freely available tools for biological computation.
- Python cclib - (http://cclib.github.io/) - A library for parsing and interpreting the results of computational chemistry packages.
- Python Colour - (http://colour-science.org/) - Implementing a comprehensive number of colour theory transformations and algorithms.
- Python Karate Club - (https://github.com/benedekrozemberczki/karateclub) - Unsupervised machine learning toolbox for graph structured data.
- Python NetworkX - (https://networkx.github.io/) - A high-productivity software for complex networks.
- Python NIPY - (http://nipy.org) - A collection of neuroimaging toolkits.
- Python NumPy - (http://www.numpy.org/) - A fundamental package for scientific computing with Python.
- Python ObsPy - (https://github.com/obspy/obspy/wiki/) - A Python toolbox for seismology.
- Python Open Babel - (http://openbabel.org/wiki/Main_Page) - A chemical toolbox designed to speak the many languages of chemical data.
- Python PyDy - (http://www.pydy.org/) - Short for Python Dynamics, used to assist with workflow in the modeling of dynamic motion.
- Python PyMC - (https://github.com/pymc-devs/pymc3) - Markov Chain Monte Carlo sampling toolkit.
- Python QuTiP - (http://qutip.org/) - Quantum Toolbox in Python.
- Python RDKit - (http://www.rdkit.org/) - Cheminformatics and Machine Learning Software.
- Python SciPy - (https://www.scipy.org/) - A Python-based ecosystem of open-source software for mathematics, science, and engineering.
- Python SimPy - (https://gitlab.com/team-simpy/simpy) - A process-based discrete-event simulation framework.
- Python statsmodels - (https://github.com/statsmodels/statsmodels) - Statistical modeling and econometrics in Python.
- Python SymPy - (https://github.com/sympy/sympy) - A Python library for symbolic mathematics.
- Python Zipline - (https://github.com/quantopian/zipline) - A Pythonic algorithmic trading library.
Python Search
Python Libraries and software for indexing and performing search queries on data:
- django-haystack - (https://github.com/django-haystack/django-haystack) - Modular search for Django.
- Python elasticsearch-dsl-py - (https://github.com/elastic/elasticsearch-dsl-py) - The official high-level Python client for Elasticsearch.
- Python elasticsearch-py - (https://www.elastic.co/guide/en/elasticsearch/client/python-api/current/index.html) - The official low-level Python client for [Elasticsearch]] - (https://www.elastic.co/products/elasticsearch).
- Python pysolr - (https://github.com/django-haystack/pysolr) - A lightweight Python wrapper for [Apache Solr]] - (https://lucene.apache.org/solr/).
- Python whoosh - (http://whoosh.readthedocs.io/en/latest/) - A fast, pure Python search engine library.
Python Serialization
Python Libraries for serializing complex data types
- Python marshmallow - (https://github.com/marshmallow-code/marshmallow) - A lightweight library for converting complex objects to and from simple Python datatypes.
- Python pysimdjson - (https://github.com/TkTech/pysimdjson) - A Python bindings for [simdjson]] - (https://github.com/lemire/simdjson).
- python-rapidjson - (https://github.com/python-rapidjson/python-rapidjson) - A Python wrapper around [RapidJSON]] - (https://github.com/Tencent/rapidjson).
- Python ultrajson - (https://github.com/esnme/ultrajson) - A fast JSON decoder and encoder written in C with Python bindings.
Python Serverless Frameworks
Python Frameworks for developing serverless Python code:
- python-lambda - (https://github.com/nficano/python-lambda) - A toolkit for developing and deploying Python code in AWS Lambda.
- Python Zappa - (https://github.com/Miserlou/Zappa) - A tool for deploying WSGI applications on AWS Lambda and API Gateway.
Python Shell
Python Shells based on Python:
- Python xonsh - (https://github.com/xonsh/xonsh/) - A Python-powered, cross-platform, Unix-gazing shell language and command prompt.
Python Specific Formats Processing
Python Libraries for parsing and manipulating specific text formats:
General:
- Python tablib - (https://github.com/jazzband/tablib) - A module for Tabular Datasets in XLS,
CSV, JSON, YAML:
Office:
- Python docxtpl - (https://github.com/elapouya/python-docx-template) - Editing a docx document by jinja2 template
- Python openpyxl - (https://openpyxl.readthedocs.io/en/stable/) - A library for reading and writing Excel 2010 xlsx/xlsm/xltx/xltm files.
- Python pyexcel - (https://github.com/pyexcel/pyexcel) - Providing one API for reading, manipulating and writing csv, ods, xls, xlsx and xlsm files.
- python-docx - (https://github.com/python-openxml/python-docx) - Reads, queries and modifies Microsoft Word 2007/2008 docx files.
- python-pptx - (https://github.com/scanny/python-pptx) - Python library for creating and updating PowerPoint (.pptx) files.
- Python unoconv - (https://github.com/unoconv/unoconv) - Convert between any document format supported by LibreOffice/OpenOffice.
- Python XlsxWriter - (https://github.com/jmcnamara/XlsxWriter) - A Python module for creating Excel .xlsx files.
- Python xlwings - (https://github.com/ZoomerAnalytics/xlwings) - A BSD-licensed library that makes it easy to call Python from Excel and vice versa.
- Python xlwt - (https://github.com/python-excel/xlwt) / [xlrd]] - (https://github.com/python-excel/xlrd) - Writing and reading data and formatting information from Excel files.
- Python PDFMiner - (https://github.com/euske/pdfminer) - A tool for extracting information from PDF documents.
- Python PyPDF2 - (https://github.com/mstamy2/PyPDF2) - A library capable of splitting, merging and transforming PDF pages.
- Python ReportLab - (https://www.reportlab.com/opensource/) - Allowing Rapid creation of rich PDF documents.
- Python Mistune - (https://github.com/lepture/mistune) - Fastest and full featured pure Python parsers of Markdown.
- Python-Markdown - (https://github.com/waylan/Python-Markdown) - A Python implementation of John Gruber’s Markdown.
- Python PyYAML - (http://pyyaml.org/) - YAML implementations for Python.
- Python csvkit - (https://github.com/wireservice/csvkit) - Utilities for converting to and working with CSV.
- Python unp - (https://github.com/mitsuhiko/unp) - A command line tool that can unpack archives easily.
Python Static Site Generator
Python Static site generator is software that takes some text + templates as input and produces HTML files on the output:
- Python lektor - (https://github.com/lektor/lektor) - An easy to use static CMS and blog engine.
- Python mkdocs - (https://github.com/mkdocs/mkdocs/) - Markdown friendly documentation generator.
- Python makesite - (https://github.com/sunainapai/makesite) - Simple, lightweight, and magic-free static site/blog generator (< 130 lines).
- Python nikola - (https://github.com/getnikola/nikola) - A static website and blog generator.
- Python pelican - (https://github.com/getpelican/pelican) - Static site generator that supports Markdown and reST syntax.
Python Tagging
Python Libraries for tagging items:
- django-taggit - (https://github.com/jazzband/django-taggit) - Simple tagging for Django.
Python Task Queues
Python Libraries for working with task queues:
- Python celery - (https://docs.celeryproject.org/en/stable/) - An asynchronous task queue/job queue based on distributed message passing.
- Python dramatiq - (https://github.com/Bogdanp/dramatiq) - A fast and reliable background task processing library for Python 3.
- Python huey - (https://github.com/coleifer/huey) - Little multi-threaded task queue.
- Python mrq - (https://github.com/pricingassistant/mrq) - A distributed worker task queue in Python using Redis & gevent.
- Python rq - (https://github.com/rq/rq) - Simple job queues for Python.
Python Template Engine
Python Libraries and tools for templating and lexing:
- Python Genshi - (https://genshi.edgewall.org/) - Python templating toolkit for generation of web-aware output.
- Python Jinja2 - (https://github.com/pallets/jinja) - A modern and designer friendly templating language.
- Python Mako - (http://www.makotemplates.org/) - Hyperfast and lightweight templating for the Python platform.
Python Testing
Python Libraries for testing codebases and generating test data:
- Testing Frameworks
- Python hypothesis - (https://github.com/HypothesisWorks/hypothesis) - Hypothesis is an advanced Quickcheck style property based testing library.
- Python nose2 - (https://github.com/nose-devs/nose2) - The successor to `nose`, based on `unittest2.
- Python pytest - (https://docs.pytest.org/en/latest/) - A mature full-featured Python testing tool.
- Python Robot Framework - (https://github.com/robotframework/robotframework) - A generic test automation framework.
- Python unittest - (https://docs.python.org/3/library/unittest.html) - (Python standard library) Unit testing framework.
- Test Runners
- Python green - (https://github.com/CleanCut/green) - A clean, colorful test runner.
- Python mamba - (http://nestorsalceda.github.io/mamba/) - The definitive testing tool for Python. Born under the banner of BDD.
- Python tox - (https://tox.readthedocs.io/en/latest/) - Auto builds and tests distributions in multiple Python versions
- GUI / Web Testing
- Python locust - (https://github.com/locustio/locust) - Scalable user load testing tool written in Python.
- Python PyAutoGUI - (https://github.com/asweigart/pyautogui) - PyAutoGUI is a cross-platform GUI automation Python module for human beings.
- Python Schemathesis - (https://github.com/kiwicom/schemathesis) - A tool for automatic property-based testing of web applications built with Open API / Swagger specifications.
- Python Selenium - (https://pypi.org/project/selenium/) - Python bindings for [Selenium]] - (http://www.seleniumhq.org/) WebDriver.
- Python sixpack - (https://github.com/seatgeek/sixpack) - A language-agnostic A/B Testing framework.
- Python splinter - (https://github.com/cobrateam/splinter) - Open source tool for testing web applications.
- Mock
- Python doublex - (https://pypi.org/project/doublex/) - Powerful test doubles framework for Python.
- Python freezegun - (https://github.com/spulec/freezegun) - Travel through time by mocking the datetime module.
- Python httmock - (https://github.com/patrys/httmock) - A mocking library for requests for Python 2.6+ and 3.2+.
- Python httpretty - (https://github.com/gabrielfalcao/HTTPretty) - HTTP request mock tool for Python.
- Python mock - (https://docs.python.org/3/library/unittest.mock.html) - (Python standard library) A mocking and patching library.
- Python mocket - (https://github.com/mindflayer/python-mocket) - A socket mock framework with gevent/asyncio/SSL support.
- Python responses - (https://github.com/getsentry/responses) - A utility library for mocking out the requests Python library.
- Python VCR.py - (https://github.com/kevin1024/vcrpy) - Record and replay HTTP interactions on your tests.
- Object Factories
- Python factory_boy - (https://github.com/FactoryBoy/factory_boy) - A test fixtures replacement for Python.
- Python mixer - (https://github.com/klen/mixer) - Another fixtures replacement. Supports Django, Flask, SQLAlchemy, Peewee and etc.
- Python model_mommy - (https://github.com/vandersonmota/model_mommy) - Creating random fixtures for testing in Django.
- Code Coverage
- Python coverage - (https://pypi.org/project/coverage/) - Code coverage measurement.
- Fake Data
- Python fake2db - (https://github.com/emirozer/fake2db) - Fake database generator.
- Python faker - (https://github.com/joke2k/faker) - A Python package that generates fake data.
- Python mimesis - (https://github.com/lk-geimfari/mimesis) - is a Python library that help you generate fake data.
- Python radar - (https://pypi.org/project/radar/) - Generate random datetime / time.
Python Text Processing
Python Libraries for parsing and manipulating plain texts:
- General
- Python chardet - (https://github.com/chardet/chardet) - Python 2/3 compatible character encoding detector.
- Python difflib - (https://docs.python.org/3/library/difflib.html) - (Python standard library) Helpers for computing deltas.
- Python ftfy - (https://github.com/LuminosoInsight/python-ftfy) - Makes Unicode text less broken and more consistent automagically.
- Python fuzzywuzzy - (https://github.com/seatgeek/fuzzywuzzy) - Fuzzy String Matching.
- Python Levenshtein - (https://github.com/ztane/python-Levenshtein/) - Fast computation of Levenshtein distance and string similarity.
- Python pangu.py - (https://github.com/vinta/pangu.py) - Paranoid text spacing.
- Python pyfiglet - (https://github.com/pwaller/pyfiglet) - An implementation of figlet written in Python.
- Python pypinyin - (https://github.com/mozillazg/python-pinyin) - Convert Chinese hanzi (漢字) to pinyin (拼音).
- Python textdistance - (https://github.com/orsinium/textdistance) - Compute distance between sequences with 30+ algorithms.
- Python unidecode - (https://pypi.org/project/Unidecode/) - ASCII transliterations of Unicode text.
- Slugify
- Python awesome-slugify - (https://github.com/dimka665/awesome-slugify) - A Python slugify library that can preserve unicode.
- Python python-slugify - (https://github.com/un33k/python-slugify) - A Python slugify library that translates unicode to ASCII.
- Python unicode-slugify - (https://github.com/mozilla/unicode-slugify) - A slugifier that generates unicode slugs with Django as a dependency.
- Unique identifiers
- Python hashids - (https://github.com/davidaurelio/hashids-python) - Implementation of [hashids]] - (http://hashids.org) in Python.
- Python shortuuid - (https://github.com/skorokithakis/shortuuid) - A generator library for concise, unambiguous and URL-safe UUIDs.
- Parser
- Python ply - (https://github.com/dabeaz/ply) - Implementation of lex and yacc parsing tools for Python.
- Python pygments - (http://pygments.org/) - A generic syntax highlighter.
- Python pyparsing - (https://github.com/pyparsing/pyparsing) - A general purpose framework for generating parsers.
- python-nameparser - (https://github.com/derek73/python-nameparser) - Parsing human names into their individual components.
- python-phonenumbers - (https://github.com/daviddrysdale/python-phonenumbers) - Parsing, formatting, storing and validating international phone numbers.
- python-user-agents - (https://github.com/selwin/python-user-agents) - Browser user agent parser.
- Python sqlparse - (https://github.com/andialbrecht/sqlparse) - A non-validating SQL parser.
Python Third-party APIs
Python Libraries for accessing third party services APIs. Also see List of Python API Wrappers and Libraries - (https://github.com/realpython/list-of-python-api-wrappers)
- Python apache-libcloud - (https://libcloud.apache.org/) - One Python library for all clouds.
- Python boto3 - (https://github.com/boto/boto3) - Python interface to Amazon Web Services.
- django-wordpress - (https://github.com/istrategylabs/django-wordpress) - WordPress models and views for Django.
- Python facebook-sdk - (https://github.com/mobolic/facebook-sdk) - Facebook Platform Python SDK.
- Python google-api-python-client - (https://github.com/google/google-api-python-client) - Google APIs Client Library for Python.
- Python gspread - (https://github.com/burnash/gspread) - Google Spreadsheets Python API.
- Python twython - (https://github.com/ryanmcgrath/twython) - A Python wrapper for the Twitter API.
Python URL Manipulation
Python Libraries for parsing URLs:
- Python furl - (https://github.com/gruns/furl) - A small Python library that makes parsing and manipulating URLs easy.
- Python purl - (https://github.com/codeinthehole/purl) - A simple, immutable URL class with a clean API for interrogation and manipulation.
- Python pyshorteners - (https://github.com/ellisonleao/pyshorteners) - A pure Python URL shortening lib.
- Python webargs - (https://github.com/marshmallow-code/webargs) - A friendly library for parsing HTTP request arguments with built-in support for popular web frameworks.
Python Video
Python Libraries for manipulating video and GIFs:
- Python moviepy - (https://zulko.github.io/moviepy/) - A module for script-based movie editing with many formats, including animated GIFs.
- Python scikit-video - (https://github.com/aizvorski/scikit-video) - Video processing routines for SciPy.
- Python vidgear - (https://github.com/abhiTronix/vidgear) - Most Powerful multi-threaded Video Processing framework.
Python Web Asset Management
Python Tools for managing, compressing and minifying website assets:
- django-compressor - (https://github.com/django-compressor/django-compressor) - Compresses linked and inline JavaScript or CSS into a single cached file.
- django-pipeline - (https://github.com/jazzband/django-pipeline) - An asset packaging library for Django.
- django-storages - (https://github.com/jschneier/django-storages) - A collection of custom storage back ends for Django.
- Python fanstatic - (http://www.fanstatic.org/en/latest/) - Packages, optimizes, and serves static file dependencies as Python packages.
- Python fileconveyor - (http://wimleers.com/fileconveyor) - A daemon to detect and sync files to CDNs, S3 and FTP.
- flask-assets - (https://github.com/miracle2k/flask-assets) - Helps you integrate webassets into your Flask app.
- Python webassets - (https://github.com/miracle2k/webassets) - Bundles, optimizes, and manages unique cache-busting URLs for static resources.
Python Web Content Extracting
Python Libraries for extracting web contents:
- Python html2text - (https://github.com/Alir3z4/html2text) - Convert HTML to Markdown-formatted text.
- Python lassie - (https://github.com/michaelhelmick/lassie) - Web Content Retrieval for Humans.
- Python micawber - (https://github.com/coleifer/micawber) - A small library for extracting rich content from URLs.
- Python newspaper - (https://github.com/codelucas/newspaper) - News extraction, article extraction and content curation in Python.
- python-readability - (https://github.com/buriy/python-readability) - Fast Python port of arc90's readability tool.
- Python requests-html - (https://github.com/psf/requests-html) - Pythonic HTML Parsing for Humans.
- Python sumy - (https://github.com/miso-belica/sumy) - A module for automatic summarization of text documents and HTML pages.
- Python textract - (https://github.com/deanmalmgren/textract) - Extract text from any document, Word, PowerPoint, PDFs, etc.
- Python toapi - (https://github.com/gaojiuli/toapi) - Every web site provides APIs.
Python Web Crawling
Python Libraries to automate web scraping:
- Python cola - (https://github.com/chineking/cola) - A distributed crawling framework.
- Python feedparser - (https://pythonhosted.org/feedparser/) - Universal feed parser.
- Python grab - (https://github.com/lorien/grab) - Site scraping framework.
- Python MechanicalSoup - (https://github.com/MechanicalSoup/MechanicalSoup) - A Python library for automating interaction with websites.
- Python portia - (https://github.com/scrapinghub/portia) - Visual scraping for Scrapy.
- Python pyspider - (https://github.com/binux/pyspider) - A powerful spider system.
- Python robobrowser - (https://github.com/jmcarp/robobrowser) - A simple, Pythonic library for browsing the web without a standalone web browser.
- Python scrapy - (https://scrapy.org/) - A fast high-level screen scraping and web crawling framework.
Python Web Frameworks
Traditional full stack web frameworks. Also see Python RESTful API - (https://github.com/vinta/awesome-python#restful-api)
- Synchronous
- Django - (https://www.djangoproject.com/) - The most popular web framework in Python.
- Flask - (http://flask.pocoo.org/) - A microframework for Python.
- Python Pyramid - (https://pylonsproject.org/) - A small, fast, down-to-earth, open source Python web framework.
- Python Masonite - (https://github.com/MasoniteFramework/masonite) - The modern and developer centric Python web framework.
- Asynchronous
- Python Tornado - (http://www.tornadoweb.org/en/latest/) - A web framework and asynchronous networking library.
Python WebSocket
Python Libraries for working with WebSocket:
- Python autobahn-python - (https://github.com/crossbario/autobahn-python) - WebSocket & WAMP for Python on Twisted and [asyncio]] - (https://docs.python.org/3/library/asyncio.html).
- Python channels - (https://github.com/django/channels) - Developer-friendly asynchrony for Django.
- Python websockets - (https://github.com/aaugustin/websockets) - A library for building WebSocket servers and clients with a focus on correctness and simplicity.
Python WSGI Servers
- Python bjoern - (https://github.com/jonashaag/bjoern) - Asynchronous, very fast and written in C.
- Python gunicorn - (https://github.com/benoitc/gunicorn) - Pre-forked, ported from Ruby's Unicorn project.
- Python uWSGI - (https://uwsgi-docs.readthedocs.io/en/latest/) - A project aims at developing a full stack for building hosting services, written in C.
- Python waitress - (https://github.com/Pylons/waitress) - Multi-threaded, powers Pyramid.
- Python werkzeug - (https://github.com/pallets/werkzeug) - A WSGI utility library for Python that powers Flask and can easily be embedded into your own projects.
Python Resources
Where to discover learning resources or new Python libraries.
Python Books
- [Fluent Python]] - (https://www.oreilly.com/library/view/fluent-python/9781491946237/) - [Think Python]] - (https://greenteapress.com/wp/think-python-2e/)
Python Websites
- Tutorials
- Libraries
- Others
Python Newsletters
Python Podcasts
- Contributing
Your contributions are always welcome! Please take a look at the [contribution guidelines](https://github.com/vinta/awesome-python/blob/master/CONTRIBUTING.md) first.
I will keep some pull requests open if I'm not sure whether those libraries are awesome, you could [vote for them](https://github.com/vinta/awesome-python/pulls) by adding :+1: to them. Pull requests will be merged when their votes reach **20**.
Fair Use Sources
© 1994 - 2024 Cloud Monk Losang Jinpa or Fair Use. Disclaimers
SYI LU SENG E MU CHYWE YE. NAN. WEI LA YE. WEI LA YE. SA WA HE.
Python: Python Variables, Python Data Types, Python Control Structures, Python Loops, Python Functions, Python Modules, Python Packages, Python File Handling, Python Errors and Exceptions, Python Classes and Objects, Python Inheritance, Python Polymorphism, Python Encapsulation, Python Abstraction, Python Lists, Python Dictionaries, Python Tuples, Python Sets, Python String Manipulation, Python Regular Expressions, Python Comprehensions, Python Lambda Functions, Python Map, Filter, and Reduce, Python Decorators, Python Generators, Python Context Managers, Python Concurrency with Threads, Python Asynchronous Programming, Python Multiprocessing, Python Networking, Python Database Interaction, Python Debugging, Python Testing and Unit Testing, Python Virtual Environments, Python Package Management, Python Data Analysis, Python Data Visualization, Python Web Scraping, Python Web Development with Flask/Django, Python API Interaction, Python GUI Programming, Python Game Development, Python Security and Cryptography, Python Blockchain Programming, Python Machine Learning, Python Deep Learning, Python Natural Language Processing, Python Computer Vision, Python Robotics, Python Scientific Computing, Python Data Engineering, Python Cloud Computing, Python DevOps Tools, Python Performance Optimization, Python Design Patterns, Python Type Hints, Python Version Control with Git, Python Documentation, Python Internationalization and Localization, Python Accessibility, Python Configurations and Environments, Python Continuous Integration/Continuous Deployment, Python Algorithm Design, Python Problem Solving, Python Code Readability, Python Software Architecture, Python Refactoring, Python Integration with Other Languages, Python Microservices Architecture, Python Serverless Computing, Python Big Data Analysis, Python Internet of Things (IoT), Python Geospatial Analysis, Python Quantum Computing, Python Bioinformatics, Python Ethical Hacking, Python Artificial Intelligence, Python Augmented Reality and Virtual Reality, Python Blockchain Applications, Python Chatbots, Python Voice Assistants, Python Edge Computing, Python Graph Algorithms, Python Social Network Analysis, Python Time Series Analysis, Python Image Processing, Python Audio Processing, Python Video Processing, Python 3D Programming, Python Parallel Computing, Python Event-Driven Programming, Python Reactive Programming.
Variables, Data Types, Control Structures, Loops, Functions, Modules, Packages, File Handling, Errors and Exceptions, Classes and Objects, Inheritance, Polymorphism, Encapsulation, Abstraction, Lists, Dictionaries, Tuples, Sets, String Manipulation, Regular Expressions, Comprehensions, Lambda Functions, Map, Filter, and Reduce, Decorators, Generators, Context Managers, Concurrency with Threads, Asynchronous Programming, Multiprocessing, Networking, Database Interaction, Debugging, Testing and Unit Testing, Virtual Environments, Package Management, Data Analysis, Data Visualization, Web Scraping, Web Development with Flask/Django, API Interaction, GUI Programming, Game Development, Security and Cryptography, Blockchain Programming, Machine Learning, Deep Learning, Natural Language Processing, Computer Vision, Robotics, Scientific Computing, Data Engineering, Cloud Computing, DevOps Tools, Performance Optimization, Design Patterns, Type Hints, Version Control with Git, Documentation, Internationalization and Localization, Accessibility, Configurations and Environments, Continuous Integration/Continuous Deployment, Algorithm Design, Problem Solving, Code Readability, Software Architecture, Refactoring, Integration with Other Languages, Microservices Architecture, Serverless Computing, Big Data Analysis, Internet of Things (IoT), Geospatial Analysis, Quantum Computing, Bioinformatics, Ethical Hacking, Artificial Intelligence, Augmented Reality and Virtual Reality, Blockchain Applications, Chatbots, Voice Assistants, Edge Computing, Graph Algorithms, Social Network Analysis, Time Series Analysis, Image Processing, Audio Processing, Video Processing, 3D Programming, Parallel Computing, Event-Driven Programming, Reactive Programming.
Python Glossary, Python Fundamentals, Python Inventor: Python Language Designer: Guido van Rossum on 20 February 1991; PEPs, Python Scripting, Python Keywords, Python Built-In Data Types, Python Data Structures - Python Algorithms, Python Syntax, Python OOP - Python Design Patterns, Python Module Index, pymotw.com, Python Package Manager (pip-PyPI), Python Virtualization (Conda, Miniconda, Virtualenv, Pipenv, Poetry), Python Interpreter, CPython, Python REPL, Python IDEs (PyCharm, Jupyter Notebook), Python Development Tools, Python Linter, Pythonista-Python User, Python Uses, List of Python Software, Python Popularity, Python Compiler, Python Transpiler, Python DevOps - Python SRE, Python Data Science - Python DataOps, Python Machine Learning, Python Deep Learning, Functional Python, Python Concurrency - Python GIL - Python Async (Asyncio), Python Standard Library, Python Testing (Pytest), Python Libraries (Flask), Python Frameworks (Django), Python History, Python Bibliography, Manning Python Series, Python Official Glossary - Python Glossary, Python Topics, Python Courses, Python Research, Python GitHub, Written in Python, Python Awesome List, Python Versions. (navbar_python - see also navbar_python_libaries, navbar_python_standard_library, navbar_python_virtual_environments, navbar_numpy, navbar_datascience)