List of Python software#Applications

{{Short description|none}}

{{More citations needed|date=March 2012}}

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

{{See also|Comparison of Python IDEs}}

  • Atom, an open source cross-platform IDE with autocomplete, help and more Python features under package extensions.
  • Codelobster, a cross-platform IDE for various languages, including Python.
  • EasyEclipse, an open source IDE for Python and other languages.
  • Eclipse ,with the Pydev plug-in. Eclipse supports many other languages as well.
  • Emacs, with the built-in python-mode.{{Cite web|url=https://www.seas.upenn.edu/~chaoliu/2017/09/01/python-programming-in-emacs/|title=Python Programming in Emacs|date=September 2017}}
  • Eric, an IDE for Python and Ruby
  • Geany, IDE for Python development and other languages.
  • IDLE, a simple IDE bundled with the default implementation of the language.
  • Jupyter Notebook, an IDE that supports markdown, Python, Julia, R and several other languages.
  • Komodo IDE an IDE PHOTOS Python, Perl, PHP and Ruby.
  • NetBeans, is written in Java and runs everywhere where a JVM is installed.
  • Ninja-IDE, free software, written in Python and Qt, Ninja name stands for Ninja-IDE Is Not Just Another IDE
  • PyCharm, a proprietary and Open Source IDE for Python development.
  • PythonAnywhere, an online IDE and Web hosting service.
  • Python Tools for Visual Studio, Free and open-source plug-in for Visual Studio.
  • Spyder, IDE for scientific programming.
  • Vim, with "lang#python" layer enabled.{{Cite web|url=https://spacevim.org/use-vim-as-a-python-ide/|title=Use Vim as a Python IDE | SpaceVim}}
  • Visual Studio Code, an Open Source IDE for various languages, including Python.
  • Wing IDE, cross-platform proprietary with some free versions/licenses IDE for Python.
  • Replit, an online IDE that supports multiple languages.

Unit testing frameworks

{{Further|List of unit testing frameworks#Python}}

Python package managers and Python distributions

  • Anaconda, Python distribution with conda package manager
  • Enthought, Enthought Canopy Python with Python package manager
  • pip, package management system used to install and manage software written in Python

Applications

Web applications

Video games

  • Battlefield 2 uses Python for all of its add-ons and a lot of its functionality.{{Cite web|url=https://wiki.python.org/moin/OrganizationsUsingPython|title = OrganizationsUsingPython - Python Wiki}}
  • Bridge Commander{{Cite web|url=https://wiki.python.org/moin/OrganizationsUsingPython|title = OrganizationsUsingPython - Python Wiki}}
  • Disney's Toontown Online is written in Python and uses Panda3D for graphics.{{Cite journal|url=https://dl.acm.org/doi/10.1145/950566.950589|doi = 10.1145/950566.950589|title = Building a massively multiplayer game for the million|year = 2003|last1 = Mine|first1 = Mark R.|last2 = Shochet|first2 = Joe|last3 = Hughston|first3 = Roger|journal = Computers in Entertainment|volume = 1|pages = 1–20|s2cid = 13977231|url-access = subscription}}{{Cite web|url=https://github.com/peppythegod/ToontownOnline|title=Toontown 2013 Source|website=GitHub|date=17 November 2021}}
  • Doki Doki Literature Club!, a psychological horror visual novel using the Ren'Py engine
  • Eve Online uses Stackless Python.
  • Frets on Fire is written in Python and uses Pygame
  • Mount & Blade is written in Python.{{citation needed|date=May 2021}}
  • Pirates of the Caribbean Online is written in Python and uses Panda3D for graphics.{{citation needed|date=May 2021}}
  • SpongeBob SquarePants: Revenge of the Flying Dutchman uses Python as a scripting language.{{Cite web |title=SpongeBob SquarePants: Revenge of the Flying Dutchman .DGC - ZenHAX |url=https://zenhax.com/viewtopic.php?t=262 |access-date=2022-09-13 |website=zenhax.com}}{{Cite web |title=TXT · Jellonator/chum-world Wiki |url=https://github.com/Jellonator/chum-world |access-date=2022-09-13 |website=GitHub |language=en}}
  • The Sims 4 uses Python{{cite web|title=The Sims 4 Creator's Camp: Modding Masterclass|url=https://simsvip.com/2014/08/04/the-sims-4-creators-camp-modding-masterclass/|website=Sims VIP|date=4 August 2014|access-date=17 March 2018}}
  • The Temple of Elemental Evil, a computer role-playing game based on the classic Greyhawk Dungeons & Dragons campaign setting
  • Unity of Command (video game) is an operational-level wargame about the 1942–43 Stalingrad Campaign on the Eastern Front.{{citation needed|date=May 2021}}
  • Vampire: The Masquerade – Bloodlines, a computer role-playing game based on the World of Darkness campaign setting{{Cite web|title=Vampire: The Masquerade – Bloodlines – Mod Developer Guide – PC – By rezzzman – GameFAQs|url=https://gamefaqs.gamespot.com/pc/914819-vampire-the-masquerade-bloodlines/faqs/54295|access-date=2020-09-11|website=gamefaqs.gamespot.com}}
  • Vega Strike, an open source space simulator, uses Python for internal scripting{{citation needed|date=May 2021}}
  • World of Tanks uses Python for most of its tasks.{{Cite web|url=https://hackmag.com/devops/interview-with-wot-developers/|title=This is GameDev, baby! Interview with developers of World of Tanks – HackMag|website=hackmag.com}}

Web frameworks

{{See also|Comparison of server-side 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 microframework 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
  • Jam.py (web framework), a "full stack" WSGI rapid application development framework
  • 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
  • TACTIC, a web-based smart process application and digital asset management system
  • 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

Scientific packages

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).
  • 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, a package for parsing HTML and XML documents
  • Cheetah, a Python-powered template engine and code-generation tool
  • Construct, a python library for the declarative construction and deconstruction of data structures
  • Genshi, a template engine for XML-based vocabularies
  • IPython, a development shell both written in and designed for Python
  • Jinja, a Python-powered template engine, inspired by Django's template engine
  • Kid, simple template engine for XML-based vocabularies
  • Meson build system, a software tool for automating the building (compiling) of software
  • mod_python, an Apache module allowing direct integration of Python scripts with the Apache web server
  • PyObjC, a Python to Objective-C bridge that allows writing OS X software in Python
  • Robot Framework, a generic test automation framework for acceptance testing and acceptance test-driven development (ATDD)
  • Setuptools, a package development process library designed to facilitate packaging Python projects by enhancing the Python {{mono|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:

  • Abaqus (Finite Element Software)
  • ADvantage Framework
  • Amarok
  • ArcGIS, a prominent GIS platform, allows extensive modelling using Python
  • Autodesk Maya, professional 3D modeler allows Python scripting as an alternative to MEL as of version 8.5
  • Autodesk MotionBuilder
  • Autodesk Softimage (formerly Softimage|XSI)
  • BioNumerics a bioinformatics software suite for the management, storage and (statistical) analysis of all types of biological data.
  • Blender
  • Boxee, a cross-platform home theater PC software
  • Cinema 4D
  • Civilization IV has the map editor supporting Python.{{cite web |url=http://pc.gamespy.com/pc/civilization-iv/662218p1.html |title=GameSpy: Civilization IV |last=Kosak |first=Dave 'Fargo' |date=27 October 2005 |publisher=GameSpy |pages=1–3 |id=662218 |archive-url=https://web.archive.org/web/20131206061753/http://pc.gamespy.com/pc/civilization-iv/662218p1.html |archive-date=6 December 2013 |url-status=dead |access-date=24 October 2009}}
  • Corel Paint Shop Pro
  • Claws Mail with Python plugin
  • DSHub
  • ERDAS Imagine
  • FL Studio, a Digital audio workstation, uses Python to support MIDI Controller integration, as well as scripting within its piano roll and Edison audio editor.
  • FreeCAD
  • gedit
  • GIMP
  • GNAT The GNAT programming chain tool (Ada language implementation in GNU gcc), as a GNATcoll reusable components for the applications (with or without PyGTK) and as a scripting language for the commands in the GPS programming environment
  • Houdini highly evolved 3D animation package, fully extensible using python
  • Inkscape, a free vector graphics editor
  • Krita, a free raster graphics editor for digital painting
  • MeVisLab, a medical image processing and visualization software, uses Python for network scripting, macro modules, and application building
  • Modo
  • Micromine
  • Minecraft: Pi Edition (game){{Citation|last=O'Hanlon|first=Martin|title=martinohanlon/mcpi|date=2020-09-04|url=https://github.com/martinohanlon/mcpi|access-date=2020-09-11}}
  • MSC.Software's CAE packages: Adams, Mentat, SimXpert
  • MySQL Workbench, a visual database design tool
  • Notepad++ has a plugin named [https://github.com/davegb3/PythonScript PythonScript] that allows scripting Notepad++ in Python
  • Nuke (compositing for visual effects)
  • OriginPro, a commercial graphic and analysis software, provides Python environment for access
  • ParaView, an opensource scientific visualization software
  • Poser, a 3D rendering and animation computer program that uses for scripting a special dialect of Python, called PoserPython
  • PTV AG products for traffic and transportation analysis, including PTV VISSIM
  • PyMOL, a popular molecular viewer that embeds Python for scripting and integration
  • OriginPro, a commercial graphing and analysis software, provides a Python environment for both embedded and external access
  • QGIS uses Python for scripting and plugin-development
  • Rhinoceros 3D version 5.0{{Cite web|url=https://developer.rhino3d.com/guides/rhinopython/what-is-rhinopython/|title=What is Rhino.Python?|website=developer.rhino3d.com}} and its visual-scripting language Grasshopper uses IronPython{{Cite web|title=What is Rhino.Python?|url=https://developer.rhino3d.com/guides/rhinopython/what-is-rhinopython/|access-date=2021-04-15|website=developer.rhino3d.com}}
  • Rhythmbox
  • Scribus
  • 3DSlicer, medical image visualisation and analysis software. Python is available for algorithm implementation, analysis pipelines, and GUI creation.
  • SPSS statistical software SPSS Programmability Extension allows users to extend the SPSS command syntax language with Python
  • SublimeText
  • Totem, a media player for the GNOME desktop environment
  • Vim
  • VisIt
  • WeeChat, a console IRC client

Commercial uses

  • CCP Games uses Stackless Python in both its server-side and client-side applications for its MMO Eve Online.{{Cite web|url=https://www.eve-online.com/faq/faq_07.asp |archive-url=https://web.archive.org/web/20090222195343/https://www.eveonline.com/faq/faq_07.asp|title=EVE Online {{!}} Frequently Asked Questions|date=2008-07-05|archive-date=2009-02-22|website=EVE Online|language=en}}
  • Instagram's backend is written in Python.{{Cite web|url=https://www.fastcompany.com/3047642/do-the-simple-thing-first-the-engineering-behind-instagram|title=Do The Simple Thing First: The Engineering Behind Instagram|first=Harry|last=McCracken|date=June 23, 2015|website=Fast Company}}
  • 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.{{Cite web|title=NASA Open Source Software|url=https://code.nasa.gov/?q=python|access-date=2020-10-26|website=code.nasa.gov}}{{Primary source inline|date=December 2020}} 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."[https://www.python.org/about/quotes Quotes about Python] Peter Norvig, director of search quality at Google, Inc.
  • Reddit was originally written in Common Lisp, but was rewritten in Python in 2005{{Cite web|url=https://redditblog.com/2005/12/05/on-lisp/|title=on lisp|website=Upvoted|language=en|access-date=2018-12-05}}
  • Yahoo! Groups uses Python "to maintain its discussion groups"{{Citation needed|date=August 2011}}
  • YouTube uses Python "to produce maintainable features in record times, with a minimum of developers"[https://www.python.org/about/quotes Quotes about Python] Cuong Do, Software Architect, YouTube.com.
  • Enthought uses Python as the main language for many custom applications in Geophysics, Financial applications, Astrophysics, simulations for consumer product companies, ...
  • Rosneft uses Python as one of the main languages for its geoengineering applications development. RN-GRID, a hydraulic fracturing simulation software, has a graphical user interface written entirely in Python.{{Cite web|url=https://www.rosneft.com/press/news/item/197635/|title=Rosneft Gives More Than 120 Licenses...|language=en|access-date=2019-12-05}}{{Failed verification|date=December 2019}}

Python implementations

{{See also|Python (programming language)#Implementations|Source-to-source compiler#Programming language implementations}}

Implementations of Python include:{{cite web |title=PythonImplementations |url=https://wiki.python.org/moin/PythonImplementations |work=Python Wiki |publisher=Python Software Foundation |access-date=2017-12-14}}

  • CLPython – Implementation, written in Common Lisp
  • CPython – The reference implementation, written in C11.{{Cite web |title=What's New In Python 3.11 — Python 3.11.0rc1 documentation |url=https://docs.python.org/3.11/whatsnew/3.11.html#build-changes |access-date=2022-08-15 |website=docs.python.org}} Some notable distributions include:
  • ActivePython – Distribution with more than 300 included packages{{cite news |title=ActivePython |url=https://www.activestate.com/activepython |work=ActiveState.com |publisher=ActiveState Software |access-date=2017-12-14}}
  • Intel Distribution for Python – High performance distribution with conda and pip package managers{{cite web |title=Intel Distribution for Python |url=https://software.intel.com/distribution-for-python |work=Intel Software |publisher=Intel |access-date=2017-12-14}}
  • PSF Python – Reference distribution that includes only selected standard libraries{{cite web |title=Download Python |url=https://www.python.org/downloads/ |work=Python.org |publisher=Python Software Foundation |access-date=2017-12-14}}
  • 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 microcontroller platforms
  • Nuitka – a source-to-source compiler which compiles Python code to C/C++ executables, or source code.
  • NumbaNumPy aware LLVM-based JIT compiler
  • Pyjs – a framework (based on Google Web Toolkit (GWT) concept) for developing client-side Python-based web applications, including a stand-alone Python-to-JavaScript compiler, an Ajax framework and widget toolkit
  • 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++
  • Stackless Python – CPython with coroutines

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
  • 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

References

{{reflist}}