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
- 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.[1]
 - 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
 - PIDA, open source IDE written in Python capable of embedding other text editors, such as Vim.
 - PyCharm, a proprietary and Open Source IDE for Python development.
 - PyScripter, Free and open-source software Python IDE for Microsoft Windows.
 - 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.[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
Python package managers and Python distributions
- Anaconda, Python distribution with 
condapackage manager - Enthought, Enthought Canopy Python with Python package manager
 - pip, package management system used to install and manage software written in Python
 
Applications
- 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.
 - Anki, a spaced repetition flashcard program
 - Ansible, a configuration management engine for computers by combining multi-node software deployment and ad hoc task execution
 - Bazaar, a free distribution deed revision computer control system
 - BitBake, a make-like build tool with the special focus of distributions and packages for embedded Linux cross compilation
 - BitTorrent, original client, along with several derivatives
 - Buildbot, a continuous integration system
 - Buildout, a software build tool, primarily used to download and set up development or deployment software dependencies
 - Calibre, an open source e-book management tool
 - Celery, an asynchronous task queue/job queue based on distributed message passing
 - Chandler, a personal information manager including calendar, email, tasks and notes support that is not currently under development
 - Cinema 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 the Secure Shell (SSH) protocol with Twisted
 - Deluge, a ça BitTorrent client for GNOME
 - Dropbox, a web-based file hosting service
 - Exaile, an open source audio player
 - Gajim, an instant messaging client for the XMPP protocol
 - GlobaLeaks, an open-source whistleblowing framework
 - GNOME Soundconverter, a program for converting sound files to various formats and qualities (wrapper around GStreamer).
 - Gramps, an open source genealogy software
 - Gunicorn, a pre-fork web server for WSGI applications
 - GYP (Generate Your Projects), a build automation tool (similar to CMake and Premake) designed to generate native IDE project files (e.g., Visual Studio, Xcode, etc.) from a single configuration
 - Image Packaging System (IPS), an advanced, cross-platform package management system primarily used in Solaris and OpenSolaris/illumos derivatives
 - Juice, a popular podcast downloader
 - Mercurial a cross-platform, distributed source management tool
 - Miro, a cross-platform internet television application
 - Morpheus, a file-sharing client/server software operated by the company StreamCast
 - MusicBrainz Picard, a cross-platform MusicBrainz tag editor
 - Nicotine, a PyGTK Soulseek client
 - OpenLP, lyrics projection software
 - OpenShot Video Editor
 - OpenStack, a cloud computing IaaS platform
 - Pip, a package manager used to install and manage Python software packages such as those from the Python Package Index (PyPI) software repository
 - PiTiVi, a non-linear video editor
 - Portage, the heart of Gentoo Linux, an advanced package management system based on the BSD-style ports system
 - Pungi (software), an open-source distribution compose tool for orchestrating the creation of YUM and system image repositories
 - Pychess, a cross-platform computer chess program
 - Quake Army Knife, an environment for developing 3D maps for games based on the Quake engine
 - Quod Libet, a cross-platform free and open source music player, tag editor and library organizer
 - Resolver One, a spreadsheet
 - SageMath, a combination of more than 20 main opensource math packages and provides easy to use web interface with the help of Python
 - Salt, a configuration management and remote execution engine
 - SCons, a tool for building software
 - Shinken, a computer system and network monitoring software application compatible with Nagios
 - TouchDesigner, a node based visual programming language for real time interactive multimedia content
 - Tryton, a three-tier high-level general purpose computer application platform
 - Ubuntu Software Center, a graphical package manager, was installed by default in Ubuntu 9.10, and stopped being included in Ubuntu releases starting with the Ubuntu 16.04 release.
 - Wicd, a network manager for Linux
 - YUM, a package management utility for RPM-compatible Linux operating systems
 - Waf, a build automation tool designed to assist in the automatic compilation and installation of computer software
 - Xpra, a tool which runs X clients, typically on a remote host, and directs their display to the local machine without losing any state
 
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
 - 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
 - Python Online Compiler & Editor – a web-based Python Compiler and Editor.
 
Video games
- Battlefield 2 uses Python for all of its add-ons and a lot of its functionality.[3]
 - Bridge Commander[4]
 - Disney's Toontown Online is written in Python and uses Panda3D for graphics.[5][6]
 - 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.
 - Pirates of the Caribbean Online is written in Python and uses Panda3D for graphics.
 - SpongeBob SquarePants: Revenge of the Flying Dutchman uses Python as a scripting language.[7][8]
 - The Sims 4 uses Python[9]
 - 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.
 - Vampire: The Masquerade – Bloodlines, a computer role-playing game based on the World of Darkness campaign setting[10]
 - Vega Strike, an open source space simulator, uses Python for internal scripting
 - World of Tanks uses Python for most of its tasks.[11]
 
Web frameworks
- BlueBream, a rewrite by the Zope developers of the Zope 2 web application server
 - Bottle, a fast, simple and lightweight WSGI micro web framework
 - 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
- Pygame, Python bindings for SDL
 - Panda3D, a 3D game engine for Python
 - Python Imaging Library, a module for working with images
 - Python-Ogre, a Python Language binding for the OGRE 3D engine
 - Soya3D, a high-level 3D game engine for Python
 
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
- Astropy, a library of Python tools for astronomy and astrophysics.
 - Biopython, a Python molecular biology suite
 - Gensim, a library for natural language processing, including unsupervised topic modeling and information 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 statistical natural language processing (NLP) for English
 - Orange, an open-source visual programming tool featuring interactive data visualization and methods for statistical data analysis, data mining, and machine learning.
 - NetworkX, a package for the creation, manipulation, and study of complex networks.
 - SciPy, collection of packages for mathematics, science, and engineering
 - scikit-learn, a library for machine learning.
 - TomoPy, a package for tomographic data processing and image reconstruction
 - Veusz, a scientific plotting package
 - VisTrails, a scientific workflow and provenance management software with visual programming interface and integrated visualization (via Matplotlib, VTK).
 - Apache Singa, a library for deep learning.
 
Mathematical libraries
- CuPy, a library for GPU-accelerated computing
 - Dask, a library for parallel computing
 - Mathics, an open-source implementation of the Mathematica programming language
 - Matplotlib, an extension providing MATLAB-like plotting and mathematical functions
 - 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
- 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, notably SciPy. 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 100 free 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 tools
 - SymPy, 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
- 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 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.[16]
 - Corel Paint Shop Pro
 - Claws Mail with Python plugin
 - DSHub
 - ERDAS Imagine
 - 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)[17]
 - MSC.Software's CAE packages: Adams, Mentat, SimXpert
 - MySQL Workbench, a visual database design tool
 - Notepad++ has a plugin named 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[18] and its visual-scripting language Grasshopper uses IronPython[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 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.[20]
 - Instagram's backend is written in Python.[21]
 - 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.[22] 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."[23]
 - Reddit was originally written in Common Lisp, but was rewritten in Python in 2005[24]
 - Yahoo! Groups uses Python "to maintain its discussion groups"
 - 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, a hydraulic fracturing simulation software, has a graphical user interface written entirely in Python.[26]
 
Python implementations
Implementations of Python include:[27]
- CLPython – Implementation, written in Common Lisp
 - CPython – The reference implementation, written in C11.[28] Some notable distributions include:
- ActivePython – Distribution with more than 300 included packages[29]
 - Intel Distribution for Python – High performance distribution with conda and pip package managers[30]
 - PSF Python – Reference distribution that includes only selected standard libraries[31]
 
 - 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.
 - Numba – NumPy 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
- ↑ "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. Retrieved 2022-09-13.
 - ↑ "TXT · Jellonator/chum-world Wiki". GitHub. Retrieved 2022-09-13.
 - ↑ "The Sims 4 Creator's Camp: Modding Masterclass". Sims VIP. 4 August 2014. Retrieved 17 March 2018.
 - ↑ "Vampire: The Masquerade – Bloodlines – Mod Developer Guide – PC – By rezzzman – GameFAQs". gamefaqs.gamespot.com. Retrieved 2020-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 from the original on 6 December 2013. Retrieved 24 October 2009.
 - ↑ O'Hanlon, Martin (2020-09-04), martinohanlon/mcpi, retrieved 2020-09-11
 - ↑ "What is Rhino.Python?". developer.rhino3d.com.
 - ↑ "What is Rhino.Python?". developer.rhino3d.com. Retrieved 2021-04-15.
 - ↑ "EVE Online | Frequently Asked Questions". EVE Online. 2008-07-05. Archived from the 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. Retrieved 2020-10-26.
 - ↑ Quotes about Python Peter Norvig, director of search quality at Google, Inc.
 - ↑ "on lisp". Upvoted. Retrieved 2018-12-05.
 - ↑ Quotes about Python Cuong Do, Software Architect, YouTube.com.
 - ↑ "Rosneft Gives More Than 120 Licenses..." Retrieved 2019-12-05.
 - ↑ "PythonImplementations". Python Wiki. Python Software Foundation. Retrieved 2017-12-14.
 - ↑ "What's New In Python 3.11 — Python 3.11.0rc1 documentation". docs.python.org. Retrieved 2022-08-15.
 - ↑ "ActivePython". ActiveState.com. ActiveState Software. Retrieved 2017-12-14.
 - ↑ "Intel Distribution for Python". Intel Software. Intel. Retrieved 2017-12-14.
 - ↑ "Download Python". Python.org. Python Software Foundation. Retrieved 2017-12-14.
 
External links
- Python Package Index (formerly the Python Cheese Shop) is the official directory of Python software libraries and modules
 - Popular Python recipes at ActiveState Code contains hundreds of code samples for various tasks using Python
 - Useful Modules in the Python.org wiki
 - Organizations Using Python – a list of projects that make use of Python
 - Python.org editors – Multi-platform table of various Python editors
 - Open Hub – open source projects in Python
 - Python Online Editor – Python Online Compiler & Editor
 
    This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.
