ThePython 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[ edit ] Atom , anopen source cross-platform IDE withautocomplete , help and more Python features under package extensions.Codelobster , across-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.[ 1] Eric , an IDE for Python andRuby 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 supportsmarkdown ,Python ,Julia ,R and several other languages.Komodo IDE an IDE PHOTOS Python,Perl ,PHP and Ruby.NetBeans , is written inJava and runs everywhere where aJVM is installed.Ninja-IDE , free software, written in Python andQt , Ninja name stands for Ninja-IDE Is Not Just Another IDEPyCharm , a proprietary and Open Source IDE for Python development.PythonAnywhere , an onlineIDE andWeb hosting service .Python Tools for Visual Studio , Free and open-source plug-in forVisual Studio .Spyder , IDE for scientific programming.Vim , with "lang#python" layer enabled.[ 2] 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 [ edit ] Python package managers and Python distributions [ edit ] A-A-P , a tool used to download, build and install software viaMakefile-like "recipes"Anaconda (installer) , an open-source system installer for Linux distributions primarily used inFedora Linux ,CentOS , andRed Hat Enterprise Linux .Anki , aspaced repetition flashcard programAnsible , aconfiguration management engine for computers by combiningmulti-node software deployment andad hoc task executionBazaar , a free distribution deed revision computer control systemBitBake , a make-like build tool with the special focus of distributions and packages for embeddedLinux crosscompilation BitTorrent , originalclient , along with several derivativesBuildbot , acontinuous integration systemBuildout , a software build tool, primarily used to download and set up development or deployment software dependenciesCalibre , an open source e-book management toolCelery , an asynchronous task queue/job queue based on distributed message passingChandler , apersonal information manager including calendar, email, tasks and notes support that is not currently under developmentCinema 4D , a 3D art and animation program for creating intros and 3-Dimensional text. Has a built in Python scripting console and engine.Conch , implementation of theSecure Shell (SSH) protocol withTwisted Deluge , a çaBitTorrent client forGNOME Dropbox , a web-based file hosting serviceExaile , an open sourceaudio player Gajim , aninstant messaging client for the Extensible Messaging and Presence Protocol (XMPP )GlobaLeaks , an open-source whistleblowing frameworkGNOME SoundConverter , a program to convert sound files to various formats and qualities; a wrapper aroundGStreamer Gramps , an open sourcegenealogy software Gunicorn , a pre-forkweb server forWeb Server Gateway Interface (WSGI) applicationsGYP (Generate Your Projects), a build automation tool (similar toCMake andPremake ) to generate native IDE project files (e.g.,Visual Studio ,Xcode , etc.) from one configurationImage Packaging System (IPS), an advanced, cross-platformpackage manager used in mostySolaris andOpenSolaris –illumos derivativesJuice , a popularpodcast downloaderMercurial , a cross-platform, distributed source management toolMiro , a cross-platforminternet television applicationMorpheus , afile sharing client/server software operated by the company StreamCastMusicBrainz Picard , a cross-platformMusicBrainz tag editorNicotine , aPyGTK Soulseek clientOpenLP , lyrics projection softwareOpenShot , a video editorOpenStack , acloud computing IaaS platformPip , apackage manager used to install and manage Python software packages such as those from thePython Package Index (PyPI)software repository PiTiVi , a videonon-linear editing systemPortage , the heart of Gentoo Linux, an advanced package manager based on the BSD-style ports systemPungi , an open-source distribution compose tool to organize creatingYUM and system image repositoriesPyChess , a cross-platform computer chess programQuake Army Knife , an environment for developing 3D maps for games based on theQuake engine Quod Libet , a cross-platform free and open source music player, tag editor and library organizerResolver One , aspreadsheet SageMath , a combination of more than 20 main opensource math packages and provides easy to use web interface with the help of PythonSalt , a configuration management and remote execution engineSCons , a tool for building softwareShinken , a computer system andnetwork monitoring software application compatible withNagios TouchDesigner , a node basedvisual programming language for real time interactive multimedia contentTryton , a three-tier high-level general purpose computer application platformUbuntu Software Center , a graphicalpackage manager , installed by default inUbuntu releases starting in 9.10 and ending in 16.04Wicd , a network manager forLinux Yellowdog Updater, Modified (YUM ), a package management utility for RPM-compatible Linux operating systems Waf , a build automation tool to assist automatic compiling and installing of computer softwareXpra , a tool which runs X clients, usually on a remote host, and directs their display to the local machine without losing any stateAllura , anASF software forge for managingsource code repositories , bug reports, discussions, wiki pages, blogs and more for multiple projectsBloodhound , anASF project management and bug tracking systemERP5 , a powerful open source ERP / CRM used in Aerospace, Apparel, Banking and fore-government ERPNext , an open source ERP / CRMFirstVoices , an open sourcelanguage revitalization platformKallithea , a source code management systemMailman , one of the more popular packages for running email mailing listsMakeHuman , free software for creating realistic 3D humans.MoinMoin , awiki engine Odoo (formerly OpenERP), business management softwarePlanet , afeed aggregator Plone , an open sourcecontent management system Roundup , a bug tracking systemTor2web , an HTTP proxy forTor Hidden Services (HS) Trac , web-based bug/issue tracking database, wiki, and version control front-endViewVC , a web-based interface for browsingCVS andSVN repositoriesBlueBream , a rewrite by theZope developers of the Zope 2 web application serverCherryPy , anobject-oriented web application server and frameworkCubicWeb , a web framework that targets large-scalesemantic web andlinked open data applications and international corporationsDjango , an MVT (model, view, template) web frameworkFlask , a modern, lightweight, well-documented microframework based on Werkzeug andJinja 2Google 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 technologyJam.py (web framework) , a "full stack "WSGI rapid application development frameworkNevow , a web application framework originally developed by the company DivmodPylons , a lightweight web framework emphasizing flexibility and rapid developmentPyramid , a minimalistic web framework inspired by Zope, Pylons and DjangoPython 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 PythonRapidSMS , a web framework which extends the logic and capabilities of Django to communicate with SMS messagesSpyce , a technology to embed Python code into webpagesTACTIC, a web-based smart process application and digital asset management system Tornado , a lightweight non-blocking server and frameworkTurboGears , a web framework combiningSQLObject /SQLAlchemy ,Kid /Genshi , andCherryPy /Pylons web2py , a full-stack enterprise web application framework, following the MVC designZope 2 , an application server, commonly used to buildcontent management systems Graphics frameworks [ edit ] appJar , cross-platform, open source GUI library for Python. Provides easy wrapper functions around most ofTkinter with extra functionality built in.Kivy , open source Python library for developing multitouch application software with anatural user interface (NUI).PyGTK , a popular cross-platform GUI library based on GTK+; furthermore, otherGNOME libraries also have bindings for PythonPyQt , another cross-platform GUI library based on Qt; as above,KDE libraries also have bindingsPySide , an alternative to the PyQt library, released under the BSD-style licenceTkinter is Python's de factoGUI it is shipped in most versions of Python and is integrated in theIDLE . It is basedTcl command tool.wxPython , a port ofwxWidgets and a cross-platform GUI library for PythonScientific packages [ edit ] Astropy , a library of Python tools for astronomy and astrophysics.Biopython , a Python molecular biology suiteGensim , a library fornatural language processing , including unsupervisedtopic modeling andinformation retrieval graph-tool , a Python module for manipulation and statistical analysis of graphs.Natural Language Toolkit , or NLTK, a suite of libraries and programs for symbolic and statisticalnatural language processing (NLP) for EnglishOrange , anopen-source visual programming tool featuringinteractive data visualization and methods for statisticaldata analysis ,data mining , andmachine learning .NetworkX , a package for the creation, manipulation, and study ofcomplex networks .SciPy , collection of packages for mathematics, science, and engineeringscikit-learn , a library for machine learning.TomoPy , a package for tomographic data processing and image reconstructionVeusz , a scientific plotting packageVisTrails , a scientific workflow and provenance management software with visual programming interface and integrated visualization (via Matplotlib, VTK).Apache Singa , a library fordeep learning .Mathematical libraries [ edit ] CuPy , a library for GPU-accelerated computing Dask , a library for parallel computingManim - open-source Python mathematical animation and visualisation library from3Blue1Brown Mathics , an open-source implementation of theMathematica programming languageMatplotlib , providingMATLAB -like plotting and mathematical functions (using NumPy).NumPy , a language extension that adds support for large and fast,multi-dimensional arrays and matricesPlotly is a scientific plotting library for creating browser-basedgraphs .SageMath is a large mathematical software application which integrates the work of nearly 100free software projects.SymPy , a symbolic mathematical calculations packagePyMC , python module containingBayesian statistical models and fitting algorithms, including Markov chain Monte Carlo.Numerical libraries [ edit ] NumPy , a BSD-licensed library that adds support for the manipulation of large, multi-dimensional arrays and matrices; it also includes a large collection of high-level mathematical functions. NumPy serves as the backbone for a number of other numerical libraries, notablySciPy . De facto standard for matrix/tensor operations in Python.Pandas , a library for data manipulation and analysis.SageMath is a large mathematical software application which integrates the work of nearly 100free software projects and supports linear algebra, combinatorics, numerical mathematics, calculus, and more.[ 12] SciPy ,[ 13] [ 14] [ 15] a large BSD-licensed library of scientific tools. De facto standard for scientific computations in Python.ScientificPython , a library with a different set of scientific toolsSymPy , a library based on New BSD license for symbolic computation. Features of Sympy range from basic symbolic arithmetic to calculus, algebra, discrete mathematics and quantum physics.Additional development packages [ edit ] Beautiful Soup , a package for parsing HTML and XML documentsCheetah , a Python-powered template engine and code-generation toolConstruct , a python library for the declarative construction and deconstruction of data structuresGenshi , a template engine for XML-based vocabulariesIPython , a development shell both written in and designed for PythonJinja , a Python-powered template engine, inspired byDjango 's template engineKid , simple template engine for XML-based vocabulariesMeson build system , a software tool for automating the building (compiling) of softwaremod_python , anApache module allowing direct integration of Python scripts with the Apache web serverPyObjC , a Python to Objective-C bridge that allows writing OS X software in PythonRobot Framework , a generic test automation framework for acceptance testing and acceptance test-driven development (ATDD)Setuptools , apackage development process library designed to facilitate packaging Python projects by enhancing the Pythondistutils (distribution utilities) standard library.Sphinx , which convertsreStructuredText files intoHTML websites and other formats includingPDF ,EPub andMan pages SQLAlchemy , database backend andORM SQLObject , an ORM for providing an object interface to a databaseStorm , an ORM fromCanonical Twisted , a networking framework for PythonVPython , the Python programming language plus a 3D graphics module called VisualEmbedded as a scripting language [ edit ] 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 PythonAutodesk Maya , professional3D modeler allows Python scripting as an alternative toMEL as of version 8.5Autodesk 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-platformhome theater PC softwareCinema 4D Civilization IV has the map editor supporting Python.[ 16] Corel Paint Shop Pro Claws Mail with Python pluginDSHub ERDAS Imagine FL Studio , aDigital audio workstation , uses Python to supportMIDI Controller integration, as well as scripting within itspiano 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 environmentHoudini highly evolved 3D animation package, fully extensible using pythonInkscape , a freevector graphics editor Krita , a freeraster graphics editor for digital paintingMeVisLab , a medical image processing and visualization software, uses Python for network scripting, macro modules, and application buildingModo Micromine Minecraft: Pi Edition (game) [ 17] MSC.Software 's CAE packages: Adams, Mentat, SimXpertMySQL Workbench , a visual database design toolNotepad++ has a plugin namedPythonScript that allows scripting Notepad++ in PythonNuke (compositing for visual effects)OriginPro , a commercial graphic and analysis software, provides Python environment for accessParaView , an opensource scientific visualization softwarePoser , a3D rendering andanimation computer program that uses for scripting a special dialect of Python, called PoserPythonPTV AG products for traffic and transportation analysis, includingPTV VISSIM PyMOL , a popular molecular viewer that embeds Python for scripting and integrationOriginPro , a commercial graphing and analysis software, provides a Python environment for both embedded and external accessQGIS uses Python for scripting and plugin-developmentRhinoceros 3D version 5.0[ 18] and its visual-scripting languageGrasshopper usesIronPython [ 19] 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 PythonSublimeText Totem , a media player for theGNOME desktop environmentVim VisIt WeeChat , a consoleIRC clientCCP Games usesStackless Python in both its server-side and client-side applications for itsMMO Eve Online .[ 20] Instagram 's backend is written in Python.[ 21] NASA is using Python to implement aCAD /CAE /PDM repository and model management, integration, and transformation system which will be the core infrastructure for its next-generation collaborative engineering environment.[ 22] [non-primary source needed ] It is also the development language forOpenMDAO , a framework developed by NASA for solvingmultidisciplinary design optimization problems."Python has been an important part ofGoogle since the beginning, and remains so as the system grows and evolves. Today dozens of Google engineers use Python."[ 23] Reddit was originally written inCommon Lisp , but was rewritten in Python in 2005[ 24] Yahoo! Groups uses Python "to maintain its discussion groups"[citation needed ] YouTube uses Python "to produce maintainable features in record times, with a minimum of developers"[ 25] 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, ahydraulic fracturing simulation software, has a graphical user interface written entirely in Python.[ 26] [failed verification ] Python implementations [ edit ] Implementations of Python include:[ 27]
Historic Python implementations include:
Parrot – Virtual machine being developed mainly as the runtime forRaku , and intended to support dynamic languages like Python, Ruby, Tcl, etc.Psyco – specialized JIT compiler project that has mostly been eclipsed by PyPyPyrex – Python-like Python module development project that has mostly been eclipsed by CythonPython for S60 – CPython port to theS60 platformStackless Python – CPython withcoroutines Unladen Swallow – performance-orientated implementation based on CPython which natively executed itsbytecode via anLLVM -based JIT compiler. Funded by Google, stopped circa 2011^ "Python Programming in Emacs" . September 2017.^ "Use Vim as a Python IDE | SpaceVim" .^ "OrganizationsUsingPython - Python Wiki" .^ "OrganizationsUsingPython - Python Wiki" .^ 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 .S2CID 13977231 . ^ "Toontown 2013 Source" .GitHub . 17 November 2021.^ "SpongeBob SquarePants: Revenge of the Flying Dutchman .DGC - ZenHAX" .zenhax.com . Retrieved2022-09-13 .^ "TXT · Jellonator/chum-world Wiki" .GitHub . Retrieved2022-09-13 .^ "The Sims 4 Creator's Camp: Modding Masterclass" .Sims VIP . 4 August 2014. Retrieved17 March 2018 .^ "Vampire: The Masquerade – Bloodlines – Mod Developer Guide – PC – By rezzzman – GameFAQs" .gamefaqs.gamespot.com . Retrieved2020-09-11 .^ "This is GameDev, baby! Interview with developers of World of Tanks – HackMag" .hackmag.com .^ Zimmermann, P., Casamayou, A., Cohen, N., Connan, G., Dumont, T., Fousse, L., ... & Bray, E. (2018). Computational Mathematics with SageMath. SIAM. ^ Jones, E., Oliphant, T., & Peterson, P. (2001). SciPy: Open source scientific tools for Python. ^ Bressert, E. (2012). SciPy and NumPy: an overview for developers. " O'Reilly Media, Inc.". ^ Blanco-Silva, F. J. (2013). Learning SciPy for numerical and scientific computing. Packt Publishing Ltd. ^ Kosak, Dave 'Fargo' (27 October 2005)."GameSpy: Civilization IV" .GameSpy . pp. 1– 3. 662218. Archived fromthe original on 6 December 2013. Retrieved24 October 2009 . ^ O'Hanlon, Martin (2020-09-04),martinohanlon/mcpi , retrieved2020-09-11 ^ "What is Rhino.Python?" .developer.rhino3d.com .^ "What is Rhino.Python?" .developer.rhino3d.com . Retrieved2021-04-15 .^ "EVE Online | Frequently Asked Questions" .EVE Online . 2008-07-05. Archived fromthe original on 2009-02-22.^ McCracken, Harry (June 23, 2015)."Do The Simple Thing First: The Engineering Behind Instagram" .Fast Company . ^ "NASA Open Source Software" .code.nasa.gov . Retrieved2020-10-26 .^ Quotes about Python Peter Norvig, director of search quality at Google, Inc.^ "on lisp" .Upvoted . Retrieved2018-12-05 .^ Quotes about Python Cuong Do, Software Architect, YouTube.com.^ "Rosneft Gives More Than 120 Licenses..." Retrieved2019-12-05 .^ "PythonImplementations" .Python Wiki .Python Software Foundation . Retrieved2017-12-14 .^ "What's New In Python 3.11 — Python 3.11.0rc1 documentation" .docs.python.org . Retrieved2022-08-15 .^ "ActivePython" .ActiveState.com .ActiveState Software. Retrieved2017-12-14 .^ "Intel Distribution for Python" .Intel Software .Intel . Retrieved2017-12-14 .^ "Download Python" .Python.org .Python Software Foundation . Retrieved2017-12-14 .