哪些网页框架支持Python3(PEP3333 - WSGI 1.0.1兼容)
我最近开始学习Python,经过一番研究,我决定从Python3开始(连Guido在Google IO'11上也建议这么做)。但是,主要的(网络)框架对Python3的支持真的让我很困扰。我知道这个问题在网上和StackOverflow上已经被问过很多次,但现在我们有了一个最终版的PEP3333(WSGI 1.0.1),我想知道哪些框架支持或将要支持Python3。我找到的唯一一个是CherryPy3.2.0,它的项目页面上说它符合PEP 3333。我特别想了解Django、Turbogears、Pylons和Flask的情况(如果有任何路线图,那就太好了)。
2 个回答
[编辑] 官方Django项目关于Python 3的路线图可以在这里查看。
目前的Django主干版本(r17165)(链接在这里)已经通过了Python 3的测试(Google小组讨论)!Django终于支持Python 3了!!
之前,网络框架没有太大的动力去支持Python 3,因为当时没有适用的WSGI标准。现在我们有了PEP 3333,但这个标准还很新,所以很少有框架能及时迁移到Python 3。
除了CherryPy,我知道的只有两个其他的Python 3网络框架,一个是QP,这个框架看起来和其他框架很不一样,而且我知道它根本不使用WSGI;另一个是Bottle,它声称支持PEP 3333(不过你得在文档里仔细找找才能找到相关信息)。
据我所知,Django没有关于Python 3的官方计划(除了一个已经过时的旧计划),但他们承诺会在夏天进行相关工作。
Pyramid正在等待组件架构的迁移,而到目前为止,这项工作主要是我在做,但我现在没有时间。:-) 我不知道Pyramid是否有具体的计划,但组件架构是有计划的。不过没有具体的时间表,因为这完全依赖于志愿者的时间。
总的来说,虽然Guido建议使用Python 3是明智的,但在今天的网络编程中,这并不太适用。