针对Python 3.1用户的Python web开发框架

针对Python 3.1用户的Python web开发框架,python,web-frameworks,Python,Web Frameworks,我学习python已经有一段时间了。在开始这项“学习python”的工作时,我决定学习python的最新和最好的3.1版本。我现在对这个决定感到遗憾,因为我想尝试一些pythonweb开发框架&看起来它们中的许多还不支持3.1&看起来可能需要几年时间来支持python的新版本,尤其是和。这真令人失望。因此,用户们,你有没有建议我使用一个运行在3.1上的web框架,它支持一些现代的(我想我永远也学不到;-)web框架功能,如MVC/ORM/URL路由/缓存等。试一试怎么样?最近,python 3.

我学习python已经有一段时间了。在开始这项“学习python”的工作时,我决定学习python的最新和最好的3.1版本。我现在对这个决定感到遗憾,因为我想尝试一些pythonweb开发框架&看起来它们中的许多还不支持3.1&看起来可能需要几年时间来支持python的新版本,尤其是和。这真令人失望。因此,用户们,你有没有建议我使用一个运行在3.1上的web框架,它支持一些现代的(我想我永远也学不到;-)web框架功能,如MVC/ORM/URL路由/缓存等。

试一试怎么样?最近,python 3.x的许多功能都被后移植到了2.7,比如OrderedICT、更快的io模块,集合理解、听写理解等

根据我的经验,Python2.7在django 1.2主干版本上运行完全没有问题


在我看来,学习新框架比从Python2.x切换到Python3.x要花更多的时间,所以选择一个框架,然后继续使用Python2.x,到时候再切换到3.x。

Python2.6和Python3.1真的没有那么大的不同,我只是建议您同时学习这两个框架,特别是由于Python的两个分支将共存一段时间。。。因此,最好只是了解一下细微的差别。文档“”解释了2.6和3.0之间的大部分差异。

与其他文档一样,我建议您从Python2.6.x开始——Python2.7将于今年夏天发布,尽管您今天可以获得alpha或beta版本

虽然Python3.x与2.x向后不兼容,但Python语法不会无法识别。。。几乎所有内容都与2.x非常相似,但当打印从语句更改为函数时,很容易中断代码。所以现在不要担心Python3。正如其他人提到的,您可以立即开始使用大量在Python2.x中工作的web框架

另外,仅仅因为编号,不要被愚弄,认为Python 2在任何方面都是过时的,也不能连续跟踪时间线。换句话说,Python2.7将比Python3.0和3.1更新。(3.2要到今年年底才会发布。)同样,Python2还没有下线——2.x和3.x都在积极开发中

工业世界仍然在Python2.x上运行;x的出现提醒我们,下一代已经到来,现在是所有底层基础设施和框架开始移植工作的时候了,这样我们最终都可以迁移

如果您想了解更多关于Python 2和Python 3之间的关系、它们之间的变化/差异以及时间线和迁移的信息,您可以查看我今年早些时候写的这篇在线文章:

“Python 3:编程语言的演变”

我也在2月份的PyCon 2010上做了一次关于这个问题的演讲。您可以在此处访问视频和幻灯片:
Py3k实际上有一个Django端口

我还记得在Django开发者邮件列表上读过一篇关于将Django移植到py3k的大学项目的文章,但是我现在找不到这篇文章

编辑 哦,在这里:

这个项目是由多伦多大学的学生领导的。p> ENDEDIT

查询类似“Django py3k端口”的内容会得到一些有用的结果

还可以查看以下URL:

Cherrypy3.2(仍在开发中)将在Python3.x上运行

瓶子在Python3.x上使用2to3后也可以运行。很容易做到,而且确实有效。然而,瓶子不是一个“完整的框架”,但它很容易使用

编辑:

我在Python3.1中使用了瓶子,具体地说是stackless Python3.1,用于我正在慢慢开发的游戏。但在工作中,我只是在使用Python2.6,不久我将使用Webpy


我工作的站点是用PHP编写的,但是当我需要添加一个新功能时,我可以轻松地从所有PHP代码中分离出来,我会用python编写。尽管我几乎每天都使用PHP,每月只使用几次Python,但我仍然可以用Python比PHP更快地完成任务:)

我认为这是一个好问题,尽管我建议您使用python2.7+1它会来的,但是是的,webdev还没有出现在Py3k中。这是令人失望和沮丧的;我们甚至还没有一个可以工作的WSGI标准,学习不同的框架与从Python 2.x切换到3.x的时间差异是非常真实的