Application Domains
Python is used in many application domains. Here's a sampling.
- The Python Package Index hosts thousands of third party modules for Python.
Web and Internet Development
Python offers a wide range of choices for web development:
- Writing basic CGI scripts.
- Frameworks such as Django and TurboGears.
- High-end solutions such as Zope.
- Advanced content management systems such as Plone.
For custom web solutions and other internet-based applications:
- Extensive support for HTML and XML.
- E-mail processing.
- Processing RSS feeds.
- Support for many other Internet protocols.
Database Access
- Custom and ODBC interfaces to MySQL, Oracle, MS SQL Server, PostgreSQL, SybODBC, and others are available for free download.
- Standard Database API.
- Object databases such as ZODB and Durus.
Desktop GUIs
Scientific and Numeric
Python is widely used in scientific and numeric computing:
Education
Python is a superb language for teaching programming, both at the introductory level and for more advanced courses.
- Education Special Interest Group is a good place to start.
- pyBiblio links to many different resources.
- The Software Carpentry Course, funded by the Python Software Foundation.
Network Programming
In addition to the web and internet support described above, Python also provides support for lower level network programming:
- Easy-to-use socket interface.
- Twisted Python, a framework for asynchronous network programming.
Software Development
Python is often used as a support language for software developers, for build control and management, testing, and in many other ways.
- SCons for build control.
- Buildbot and Apache Gump for automated continuous compilation and testing.
- Roundup or Trac for bug tracking and project management.
- Roster of Integrated Development Environments.
Game and 3D Graphics
Python is widely used in commercial and hobby game development:
- A partial list of games is on the Python Games wiki page.
- PyGame and PyKyra are two of the game frameworks available for Python.
- List of 3D rendering libraries available for Python.
- PyWeek is a semi-annual game programming contest.
