12 个最好的 Python 框架用于快速开发

jopen 9年前

1. Django

django
Django is a high-level Python Web framework that encourages rapid development and clean, pragmatic design. Built by experienced developers, it takes care of much of the hassle of Web development, so you can focus on writing your app without needing to reinvent the wheel. It’s free and open source. Django takes security seriously and helps developers avoid many common security mistakes.

2. CherryPy

cherrypy
CherryPy is among the oldest web framework available for Python, yet many people aren’t aware of its existence. One of the reason for this is that CherryPy is not a complete stack with built-in support for a multi-tier architecture. It doesn’t provide frontend utilities nor will it tell you how to speak with your storage. Instead, CherryPy’s take is to let the developer make those decisions. This is a contrasting position compared to other well-known frameworks. CherryPy has a clean interface and does its best to stay out of your way whilst providing a reliable scaffolding for you to build from. Typical use-cases for CherryPy go from regular web application with user frontends (think blogging, CMS, portals, ecommerce) to web-services only.

3. Flask

flask
Flask is a microframework because of its extensible yet simple core. A new programmer might find it lacking several features such as form validation, database abstraction layer, and use of third-party libraries for adding common features. However, it allows extensions that make it comparatively easier to add the required functionality.

4. Bottle

bottle
Bottle is a fast, simple and lightweight WSGI micro web-framework for Python. It is distributed as a single file module and has no dependencies other than the Python Standard Library. It provides support for apps like the Google App Engine, Python Paste, and includes several templates like Cheetah and Mako.

5. Pyramid

pyramid
Pyramid is a very general open source Python web framework. As a framework, its primary job is to make it easier for a developer to create an arbitrary web application. The type of application being created isn’t really important; it could be a spreadsheet, a corporate intranet, or a social networking platform. Pyramid is general enough that it can be used in a wide variety of circumstances.

6. Klein

klein
Klein is a micro-framework for developing production-ready web services with Python. It’s built on widely used and well tested components like Werkzeug and Twisted, and has near-complete test coverage.

7. Morepath

morepath
Morepath is an Python WSGI microframework. It uses routing, but the routing is to models. Morepath is model-driven and flexible, which makes it expressive.

8. Web.py

webpy
Web.py is a web framework for Python that is as simple as it is powerful. web.py is in the public domain; you can use it for whatever purpose with absolutely no restrictions. You can comfortably write web apps in python; hence, taking the liability out of frameworks. Programmers enjoy working on web.py because of its zero limitations and ease of use. Some programmers might find its fewer features limiting; however, it allows room for successful integration and you don’t have to carry on all of these features, especially when you don’t need them.

9. ObjectWeb

objectweb
ObjectWeb is a fast, minimalist, pure-Python web framework that relies on no third party libraries. It is designed around using Python as it was originally intended to be used: as an Object Oriented Programming language. ObjectWeb supports the CGI and WSGI standards and has a built-in development server.

10. Pecan

pecan
Pecan was created to fill a void in the Python web-framework world – a very lightweight framework that provides object-dispatch style routing. Pecan does not aim to be a “full stack” framework, and therefore includes no out of the box support for things like sessions or databases. Pecan instead focuses on HTTP itself.

11. Tornado

tornado
Tornado is a Python web framework and asynchronous networking library, originally developed atFriendFeed. By using non-blocking network I/O, Tornado can scale to tens of thousands of open connections, making it ideal for long polling, WebSockets, and other applications that require a long-lived connection to each user.

12. Grok

grok
Grok is a web application framework for Python developers. It is aimed at both beginners and very experienced web developers. Grok has an emphasis on agile development. Grok is easy and powerful. If you are starting into web applications, Grok can offer multiple building blocks and it has an excellent community, which is always ready to support. It offers a much simpler but rather agile mode of learning Python.