python几个轻量级web框架
2016-04-11 18:04:34 惹不起的程咬金 阅读数 7944更多
分类专栏: 云计算/大数据/并行计算 Python
我最近发表了一篇名为 ‘7 Minimal Node.js Web Frameworks for 2014 and Beyond‘ 的博文——目前它是我博客访问量最高的文章:超过10000人浏览,分享和评论了这些我总结到一起的web框架。
这教会了我一些事,这类文章是有需求的——因为它提供了触手可及的备查和/或探索了做事情的新方式。我发现很多“周刊”在他们的新闻或是博客上刊登了我的文章,对此我感到很高兴。这促使我尝试把更多其他语言中的此类内容总结到一起,比如Python、Ruby、PHP和JavaScript。
众口难调,我尽量把我搜索的时候出现在靠前位置的那些框架都囊括进来了, 我试着以社区规模大小以及它们在GitHub上的活跃度来为它们排名。我建议您在留言中列出您个人最喜爱的框架(或是您正在使用的框架)的链接,我会尽快把它加入到列表中。
Python 是一个可以让你更快地完成工作,更高效地整合系统的语言。你可以学习使用Python并且马上获得生产力的提升,降低维护成本。
Python版的Hello World程序
你可能忘记该怎么做了,下面是一个提示。
Python
1 | print “Hello World!”; |
我还特别喜欢这一段代码,
Python
123 | while True: for i in [“/”,”*”,”|”,”\\”,”|”]: print “%s\r” % i, |
Python的Web框架
当一些基础工作不需要你操心的时候,工作起来会比较容易,这也是为什么框架在各个语言的开发者社区中变得如此流行的原因,你无法否认的是,拼装一个网页或是一个项目,比起不得不创建你自己的类或方法要容易的多。
我秉承自己的承诺,在本文或是将来任何的榜单中,不偏向任何一个框架,所有的选择都基于我个人意见和喜好。如果你可以和朋友们分享本文,在你自己的博客上面宣传一下我会很感激你的。同时我也很感激那些让这些Python web框架成为可能所付出的辛勤劳动。
bobo
Bobo是一个轻量级的框架,用来创建WSGI web应用。它的目标是简单易用,容易记忆。
它强调两个方面的内容:
1)把URL映射到对象; 2)调用对象来生成HTTP响应。
Bobo 并不具备模板语言,数据库集成层或是其他一些WSGI中间件或特定应用程序库所提供的功能。Bobo建立在其他框架之上,尤其是WSGI和WebOb。
Bottle
Bottle是一个快速、简单、轻量级的WSGI微型Python web框架。它仅包含单一文件模块,并且不依赖除了Python标准库以外的其他库。
它支持类似Google App Engine、Python Paste这样的应用,还包含了对一些模板的支持,比如Cheetah和Mako。
CherryPy 允许开发者以他们构建其他面向对象Python程序近乎同样的方式来开发web应用。这使得可以在更短的时间内开发出更精简的源代码。CherryPy允许你进行很多常规的Python编程,但是它并没有整合一个模板系统,你需要自己去找一个。(它支持大多数的模板)
CherrPy 能够很好适应默认的Python功能和结构,它在使用更少的代码创建web应用
Cyclone 是一个Python的web服务框架,它基于Twisted protocol实现了Tornado API 。我将把对这个框架的介绍,交给7co.的Gleicon,请看他的文章。