应该使用哪个版本的Python?

时间:2010-05-01 19:10:11

标签: python

我正在开始一个新的Python Web项目。对于大多数框架,每个人都会使用最新版本,但是,对于Python 3.x来说,这似乎并非如此。

全新项目应使用哪个版本的Python?

5 个答案:

答案 0 :(得分:3)

许多第三方Python模块仍然需要Python 2.x(例如numpy,scipy)。如果你将使用其中的任何一个,或者如果你还不知道你需要哪些模块并希望保持你的选择,那么现在就坚持使用Python 2.x.

如果您知道所需的所有模块都可以使用Python 3.x,那么请继续使用。

答案 1 :(得分:2)

对于Web项目,选择托管服务提供商支持的python版本。

如果您很幸运拥有专用服务器,那么请选择您选择的框架最佳支持的任何版本。主要的Web框架仍然不支持python 3,所以python 2.6似乎是最好的选择。

如果您的项目托管在共享主机上,您将不得不坚持主机上安装的python版本(个人而言,我坚持使用python 2.4.4,希望我的托管服务提供商将升级到2.5或2.6,不会很快来的)

答案 2 :(得分:1)

我推荐使用Python 2.6,因为它具有Python 3.x的一些功能,但它仍然保留了Python 2.5中的相同功能。虽然有些人可能认为Python 3.x更好(很可能是因为大量的重组以及默认情况下所有字符串都是Unicode),现在使用的大多数Python代码仍然适用于Python 2.x.我要说坚持使用Python 2.6,直到你需要Python 3.x. :)

答案 3 :(得分:1)

对于那些“没有任何包袱”的人来说,Python 3是一个很好的起点(意味着没有现有的Python代码或应用程序,没有尚未移植到Python 3的库/依赖项等)。

然而另一方面,虽然Python 3在这里,但大多数工业世界仍然在Python 2上运行,所以如果您确实需要使用可用的库和软件包创建一个今天运行的应用程序,那就是你的位置应该开始。如果您这样做,请使用2.6或更新版本,因为它们具有从3.x向后移植的功能,以帮助您开始以3.x的方式思考。 :-)如果你学习了一个,很容易适应另一个(反之亦然)。

尽管Python 3.x与2.x向后兼容,但Python语法不会无法识别......几乎所有内容都与2.x非常相似,但是当打印更改时很容易破坏代码对函数的声明。所以现在不要担心Python 3。

另外,仅仅因为编号,不要因为认为Python 2以任何方式过时而被愚弄,也不能连续遵循时间表。换句话说,Python 2.7将比Python 3.0和3.1更新。 (3.2将在今年年底之前发布。)同样,Python 2尚未EOL'd - 2.x和3.x正在积极开发。所以,和其他人一样,我建议你从任何Python 2.x开始。

在相关的说明中,我让发布者在我的书Core Python Programming的最新打印(第5页!!)中添加了两个新的附录(C& D),一个在Python 3.x上,另一个关于2.6的重要性及其在帮助用户过渡到Python 3中所起的作用。

最后,我一直在讨论Python 3并讨论与Python 2的主要区别。几个月前的one that I gave a PyCon包括幻灯片预览。

答案 4 :(得分:0)

我将2.5用于Google App Engine项目,2.6用于我的Django项目。