Python

Introduction

There are many Python web frameworks, indeed so many that the choice can be overwhelming. I will mention five frameworks here:

  • Django - a self-contained, tightly integrated framework, aims to make things easy for the developer.
  • Nevow - a web framework for Twisted, a non-blocking application framework.
  • Pylons - a loosely coupled framework, that lets you pick and choose Python components.
  • TurboGears - moderately coupled; uses pre-existing Python components and attempts to present them in an integrated manner.
  • Zope - a self-contained, tightly coupled framework, with unique infrastructure around it.

Zope is by far the longest running project and has some high-profile support, but is sometimes considered overly complex. Nevow has its own niche; its non-blocking nature increases complexity, but has major advantages in some use cases. Django, Pylons and TurboGears are all aiming at a similar space - practical, rapid web app development. Django is considerably more polished than the other two, and almost certainly the best choice for a beginner. Pylons and TurboGears are in something of a state of flux, and working towards a partial merger.

WSGI

WSGI is a Python standard for communication between web servers and web applications. Somewhat like the Java Servlet API, it allows frameworks to implement a single interface to work with all web servers that support WSGI.

TurboGears

http://www.apa.org/monitor/jun04/toomany.html

© 1998 - 2008 Paul Johnston, distributed under the BSD License   Updated:16 Dec 2007