Software:List of Python software

From HandWiki
Short description: none

Template:Python sidebar

The Python programming language is actively used by many people, both in industry and academia, for a wide variety of purposes.

Integrated Development Environments (IDEs) for Python

Unit testing frameworks

Python package managers and Python distributions

Applications

Productivity

Multimedia

Gaming

File hosting

Network tools

  • Celery – an asynchronous task queue/job queue based on distributed message passing.
  • Conch – implementation of the Secure Shell (SSH) protocol with Twisted.
  • Shinken – a computer system and network monitoring software application compatible with Nagios.
  • Wicd – a network manager for Linux.
  • Xpra – a tool which runs X clients, usually on a remote host, and directs their display to the local machine without losing any state.

Package managers

Software management

  • A-A-P – a tool used to download, build and install software via Makefile-like "recipes".
  • Anaconda (installer) – an open-source system installer for Linux distributions primarily used in Fedora Linux, CentOS, and Red Hat Enterprise Linux.
  • Ansible – a configuration management engine for computers by combining multi-node software deployment and ad hoc task execution.
  • BitBake – a make-like build tool with the special focus of distributions and packages for embedded Linux cross compilation.
  • Buildbot – a continuous integration system.
  • Buildout – a software build tool, primarily used to download and set up development or deployment software dependencies.
  • GYP (Generate Your Projects) – a build automation tool (similar to CMake and Premake) to generate native IDE project files (e.g., Visual Studio, Xcode, etc.) from one configuration.
  • Mercurial – a cross-platform, distributed source management tool.
  • Pungi – an open-source distribution compose tool to organize creating YUM and system image repositories.
  • Salt – a configuration management and remote execution engine.
  • SCons – a tool for building software.
  • Waf – a build automation tool to assist automatic compiling and installing of computer software.

Other

Web applications

  • Allura – an ASF software forge for managing source code repositories, bug reports, discussions, wiki pages, blogs and more for multiple projects.
  • Bloodhound – an ASF project management and bug tracking system.
  • ERP5 – a powerful open-source ERP / CRM used in Aerospace, Apparel, Banking and for e-government.
  • ERPNext – an open-source ERP / CRM.
  • FirstVoices – an open-source language revitalization platform.
  • Kallithea – a source code management system.
  • Mailman – one of the more popular packages for running email mailing lists.
  • MakeHuman – free software for creating realistic 3D humans.
  • MoinMoin – a wiki engine.
  • Odoo (formerly OpenERP) – business management software.
  • Planet – a feed aggregator.
  • Plone – an open-source content management system.
  • Roundup – a bug tracking system.
  • Tor2web – an HTTP proxy for Tor Hidden Services (HS).
  • Trac – web-based bug/issue tracking database, wiki, and version control front-end.
  • ViewVC – a web-based interface for browsing CVS and SVN repositories.

Video games

Web frameworks

  • BlueBream – a rewrite by the Zope developers of the Zope 2 web application server.
  • CherryPy – an object-oriented web application server and framework.
  • CubicWeb – a web framework that targets large-scale semantic web and linked open data applications and international corporations.
  • Django – an MVT (model, view, template) web framework.
  • Flask – a modern, lightweight, well-documented micro-framework based on Werkzeug and Jinja 2.
  • Google App Engine – a platform for developing and hosting web applications in Google-managed data centers, including Python.
  • Grok – a web framework based on Zope Toolkit technology.
  • Nevow – a web application framework originally developed by the company Divmod.
  • Pylons – a lightweight web framework emphasizing flexibility and rapid development.
  • Pyramid – a minimalistic web framework inspired by Zope, Pylons and Django.
  • Python Paste – a set of utilities for web development that has been described as "a framework for web frameworks".
  • Quixote – a framework for developing Web applications in Python.
  • RapidSMS – a web framework which extends the logic and capabilities of Django to communicate with SMS messages.
  • Spyce – a technology to embed Python code into webpages.
  • Tornado – a lightweight non-blocking server and framework.
  • TurboGears – a web framework combining SQLObject/SQLAlchemy, Kid/Genshi, and CherryPy/Pylons.
  • web2py – a full-stack enterprise web application framework, following the MVC design.
  • Zope 2 – an application server, commonly used to build content management systems.

Graphics frameworks

UI frameworks

  • appJar – cross-platform, open-source GUI library for Python. Provides easy wrapper functions around most of Tkinter with extra functionality built in.
  • Kivy – open-source Python library for developing multitouch application software with a natural user interface (NUI).
  • PyGTK – a popular cross-platform GUI library based on GTK+; furthermore, other GNOME libraries also have bindings for Python.
  • PyQt – another cross-platform GUI library based on Qt; as above, KDE libraries also have bindings.
  • PySide – an alternative to the PyQt library, released under the BSD-style licence.
  • Tkinter – is Python's de facto GUI it is shipped in most versions of Python and is integrated in the IDLE. It is based Tcl command tool.
  • wxPython – a port of wxWidgets and a cross-platform GUI library for Python.
  • Flet – is a framework that allows building web, desktop and mobile applications in Python based on Flutter by Google

Scientific packages

Machine learning and artificial intelligence

Mathematical libraries

  • CuPy – a library for GPU-accelerated computing.
  • Dask – a library for parallel computing.
  • Manim – open-source Python mathematical animation and visualisation library from 3Blue1Brown.
  • Mathics – an open-source implementation of the Mathematica programming language.
  • Matplotlib – providing MATLAB-like plotting and mathematical functions (using NumPy).
  • NetworkX – library for studying graphs and networks
  • NumPy – a language extension that adds support for large and fast, multi-dimensional arrays and matrices.
  • Plotly – is a scientific plotting library for creating browser-based graphs.
  • SageMath – is a large mathematical software application which integrates the work of nearly 100 free software projects.
  • SymPy – a symbolic mathematical calculations package.
  • PyMC – python module containing Bayesian statistical models and fitting algorithms, including Markov chain Monte Carlo.

Numerical libraries

{{#section-h::List_of_numerical_libraries|Python}}

Additional development packages

  • Beautiful Soup – package for parsing HTML and XML documents.
  • Cheetah – Python-powered template engine and code-generation tool.
  • Construct – python library for the declarative construction and deconstruction of data structures.
  • Genshi – template engine for XML-based vocabularies.
  • IPython – development shell both written in and designed for Python.
  • Jinja – Python-powered template engine, inspired by Django's template engine.
  • Kid – simple template engine for XML-based vocabularies.
  • Meson build system – software tool for automating the building (compiling) of software.
  • mod wsgi – module that provides a WSGI compliant interface for hosting Python based web applications with the Apache web server.
  • PyObjC – Python to Objective-C bridge that allows writing OS X software in Python.
  • Robot Framework – generic test automation framework for acceptance testing and acceptance test-driven development (ATDD).
  • Setuptoolspackage development process library designed to facilitate packaging Python projects by enhancing the Python distutils (distribution utilities) standard library.
  • Sphinx – which converts reStructuredText files into HTML websites and other formats including PDF, EPub and Man pages.
  • SQLAlchemy – database backend and ORM.
  • SQLObject – an ORM for providing an object interface to a database.
  • Storm – an ORM from Canonical.
  • Twisted – a networking framework for Python.
  • VPython – the Python programming language plus a 3D graphics module called Visual.

Embedded as a scripting language

Python is, or can be used as the scripting language in these notable software products:

Commercial uses

  • CCP Games uses Stackless Python in both its server-side and client-side applications for its MMO Eve Online.[18]
  • Instagram's backend is written in Python.[19]
  • NASA is using Python to implement a CAD/CAE/PDM repository and model management, integration, and transformation system which will be the core infrastructure for its next-generation collaborative engineering environment.[20][non-primary source needed] It is also the development language for OpenMDAO, a framework developed by NASA for solving multidisciplinary design optimization problems.
  • "Python has been an important part of Google since the beginning, and remains so as the system grows and evolves. Today dozens of Google engineers use Python."[21]
  • Reddit was originally written in Common Lisp, but was rewritten in Python in 2005.[22]
  • YouTube uses Python "to produce maintainable features in record times, with a minimum of developers".[23]
  • Enthought uses Python as the main language for many custom applications in Geophysics, Financial applications, Astrophysics, simulations for consumer product companies.

Python implementations

Implementations of Python include:[24]

  • CLPython – Implementation, written in Common Lisp.
  • CPython – The reference implementation, written in C11.[25] Some notable distributions include:
    • ActivePython – Distribution with more than 300 included packages.[26]
    • Intel Distribution for Python – High performance distribution with conda and pip package managers.[27]
    • PSF Python – Reference distribution that includes only selected standard libraries[28]
  • Cython – programming language to simplify writing C and C++ extension modules for the CPython Python runtime.
  • IronPython – Python for CLI platforms (including .NET and Mono).
  • Jython – Python for Java platforms.
  • MicroPython – Python 3 implementation for micro-controller platforms.
  • Nuitka – a source-to-source compiler which compiles Python code to C/C++ executables, or source code.
  • NumbaNumPy aware LLVM-based JIT compiler.
  • PyPy – Python (originally) coded in Python, used with RPython, a restricted subset of Python that is amenable to static analysis and thus a JIT.
  • Shed Skin – a source-to-source compiler from Python to C++.

Historic Python implementations include:

  • Parrot – Virtual machine being developed mainly as the runtime for Raku, and intended to support dynamic languages like Python, Ruby, Tcl, etc.
  • Psyco – specialized JIT compiler project that has mostly been eclipsed by PyPy.
  • Pyrex – Python-like Python module development project that has mostly been eclipsed by Cython.
  • Python for S60 – CPython port to the S60 platform.
  • Stackless Python – CPython with coroutines.
  • Unladen Swallow – performance-orientated implementation based on CPython which natively executed its bytecode via an LLVM-based JIT compiler. Funded by Google, stopped circa 2011.

See also

References

  1. "Python Programming in Emacs". Chao's Blog. September 2017. https://www.seas.upenn.edu/~chaoliu/2017/09/01/python-programming-in-emacs/. 
  2. "Use Vim as a Python IDE | SpaceVim". https://spacevim.org/use-vim-as-a-python-ide/. 
  3. "pip documentation v25.2". https://pip.pypa.io/en/stable/. 
  4. "OrganizationsUsingPython - Python Wiki". https://wiki.python.org/moin/OrganizationsUsingPython. 
  5. "OrganizationsUsingPython - Python Wiki". https://wiki.python.org/moin/OrganizationsUsingPython. 
  6. Mine, Mark R.; Shochet, Joe; Hughston, Roger (2003). "Building a massively multiplayer game for the million". Computers in Entertainment 1: 1–20. doi:10.1145/950566.950589. https://dl.acm.org/doi/10.1145/950566.950589. 
  7. "Toontown 2013 Source". 17 November 2021. https://github.com/peppythegod/ToontownOnline. 
  8. "SpongeBob SquarePants: Revenge of the Flying Dutchman .DGC - ZenHAX". https://zenhax.com/viewtopic.php?t=262. 
  9. "TXT · Jellonator/chum-world Wiki" (in en). https://github.com/Jellonator/chum-world. 
  10. "The Sims 4 Creator's Camp: Modding Masterclass". 4 August 2014. https://simsvip.com/2014/08/04/the-sims-4-creators-camp-modding-masterclass/. 
  11. "Vampire: The Masquerade – Bloodlines – Mod Developer Guide – PC – By rezzzman – GameFAQs". https://gamefaqs.gamespot.com/pc/914819-vampire-the-masquerade-bloodlines/faqs/54295. 
  12. "This is GameDev, baby! Interview with developers of World of Tanks – HackMag". https://hackmag.com/devops/interview-with-wot-developers/. 
  13. https://github.com/pyscf/pyscf
  14. Kosak, Dave 'Fargo' (27 October 2005). "GameSpy: Civilization IV". GameSpy. pp. 1–3. http://pc.gamespy.com/pc/civilization-iv/662218p1.html. 
  15. O'Hanlon, Martin (2020-09-04), martinohanlon/mcpi, https://github.com/martinohanlon/mcpi, retrieved 2020-09-11 
  16. "What is Rhino.Python?". https://developer.rhino3d.com/guides/rhinopython/what-is-rhinopython/. 
  17. "What is Rhino.Python?". https://developer.rhino3d.com/guides/rhinopython/what-is-rhinopython/. 
  18. "EVE Online | Frequently Asked Questions" (in en). 2008-07-05. https://www.eve-online.com/faq/faq_07.asp. 
  19. McCracken, Harry (June 23, 2015). "Do The Simple Thing First: The Engineering Behind Instagram". https://www.fastcompany.com/3047642/do-the-simple-thing-first-the-engineering-behind-instagram. 
  20. "NASA Open Source Software". https://code.nasa.gov/?q=python. 
  21. Quotes about Python Peter Norvig, director of search quality at Google, Inc.
  22. "on lisp" (in en). https://redditblog.com/2005/12/05/on-lisp/. 
  23. Quotes about Python Cuong Do, Software Architect, YouTube.com.
  24. "PythonImplementations". Python Wiki. Python Software Foundation. https://wiki.python.org/moin/PythonImplementations. 
  25. "What's New In Python 3.11 — Python 3.11.0rc1 documentation". https://docs.python.org/3.11/whatsnew/3.11.html#build-changes. 
  26. "ActivePython". ActiveState.com (ActiveState Software). https://www.activestate.com/activepython. 
  27. "Intel Distribution for Python". Intel Software. Intel. https://software.intel.com/distribution-for-python. 
  28. "Download Python". Python.org. Python Software Foundation. https://www.python.org/downloads/.