List of Python software

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

Integrated development environments for 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 packages written in Python

Applications

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
  • Kallithea, a source code management system
  • Mailman, one of the more popular packages for running email mailing lists
  • MoinMoin, a wiki engine
  • OpenERP, new name Odoo, an open source comprehensive suite of business applications
  • 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
  • Turntable.fm, a discontinued social media site for interactively sharing music[citation needed]
  • 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
  • Bottle, A fast, simple and lightweight WSGI micro web framework
  • CherryPy, an object-oriented web application server and framework
  • Django, an MVC (model, view, controller) 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, an web framework based on Zope Toolkit technology
  • Nagare, a web framework for developing web applications in Stackless Python
  • Nevow, a web application framework originally developed by the company Divmod
  • Pylons, a lightweight web framework emphasizing flexibility and rapid development
  • Pyramid, is a minimalistic web framework inspired by Zope, Pylons and Django
  • Python Paste, 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
  • Webware for Python, an object-oriented web application framework
  • Zope 2, an application server, commonly used to build content management systems

Graphics frameworks

UI frameworks

  • 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

  • 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

Additional development packages

  • Cheetah, a Python-powered template engine and code-generation tool
  • Cherry, a non-WYSIWYG templating language developed for CherryPy framework
  • 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
  • Mako, a non-XML template library which compiles into Python modules for maximum performance
  • 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
  • Topsite Templating System, another Python-powered template engine
  • 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 software products:

Commercial uses

  • CCP hf uses Stackless Python in both its server and client side applications for its MMO Eve Online[2]
  • 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[citation 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."[3]
  • reddit was originally written in Common Lisp, but was rewritten in Python in 2005[4]
  • 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"[5]
  • Enthought uses python as the main language for countless custom applications in Geophysics, Financial applications, Astrophysics, simulations for consumer product companies, ...
  • EDF uses Python for their finite element solver Code Aster in combination with Fortran

Python implementations

  • CPython – The reference implementation, written in C89
  • Cython is a programming language to simplify writing C and C++ extension modules for the CPython Python runtime.
  • IronPython – Python for .NET and Mono platforms
  • Jython – Python coded in Java
  • PyPy – Python (originally) coded in Python, used in conjunction RPython, a restricted subset of Python that is amenable to static analysis and therefore a JIT.
  • Stackless Python – Python with coroutines
  • CLPython – Implementation, written in Common Lisp
  • Pyston - an open source Python implementation using JIT techniques. Currently targeting Python 2 support.
  • Parrot – Virtual machine being developed mainly as the runtime for Perl 6, but with the intent to also support dynamic languages like Python, Ruby, Tcl, etc.
  • Pyjs – a framework (based on GWT concept) for developing client-side Python-based web applications, including a stand-alone Python-to-JavaScript compiler, an Ajax framework and widget toolkit

References

  1. ^ http://wiki.mcneel.com/developer/python
  2. ^ EVE Online
  3. ^ Quotes about Python Peter Norvig, director of search quality at Google, Inc.
  4. ^ blog.reddit - what's new on reddit: on lisp
  5. ^ Quotes about Python Cuong Do, Software Architect, YouTube.com.

External links