应该使用哪个版本的Python?

3

我正在启动一个新的Python Web项目。在大多数框架中,每个人都会追求最新版本,然而,对于Python 3.x来说情况似乎并非如此。

对于全新的项目,应该使用哪个版本的Python呢?


现在使用v2.6,您将拥有最大的库和服务兼容性。我知道如果答案是v3会更好,但看看Windows XP被取代的速度有多快;) - msw
5个回答

3
很多第三方的Python模块仍然需要使用Python 2.x(例如numpy,scipy)。如果您将使用其中任何一个模块,或者如果您还不知道需要哪些模块并希望保持选项开放,则现在应该坚持使用Python 2.x。
如果您知道所有需要的模块都可以与Python 3.x兼容,则可以选择使用Python 3.x。

2
对于一个Web项目,选择你的托管服务商支持的Python版本。
如果你很幸运拥有一个专用服务器,那么选择最好由你选择的框架支持的版本。目前主流的Web框架仍未支持Python 3,因此Python 2.6似乎是最好的选择。
如果你的项目托管在共享主机上,你必须使用主机上安装的Python版本(个人而言,我被困在Python 2.4.4中,希望我的托管服务提供商能够升级到2.5或2.6,但这不会很快发生)。

1
我建议使用Python 2.6,因为它具有Python 3.x的一些功能,但仍保留了Python 2.5中的相同功能。虽然有人可能会认为Python 3.x更好(很可能是因为大量的重新组织和所有字符串默认为Unicode),但现在使用的大多数Python代码仍然是针对Python 2.x的。我建议在需要Python 3.x之前坚持使用Python 2.6。 :)

1

Python 3 是一个很好的起点,适合那些“没有包袱”的人(指没有现有的 Python 代码或应用程序,没有尚未移植到 Python 3 的库/依赖项等)。

然而,另一方面,虽然 Python 3 已经出现,但大部分工业界仍在使用 Python 2,因此如果您需要创建一个应用程序来运行今天可用的库和软件包,那么您应该从那里开始。如果您这样做,请使用任何 2.6 或更新版本,因为它们具有从 3.x 回溯到帮助您开始以 3.x 的方式思考的功能。 :-) 如果您学会了其中一个,就很容易适应另一个(反之亦然)。

虽然 Python 3.x 与 2.x 不兼容,但 Python 语法不会变得无法识别...几乎所有东西都非常类似于 2.x,但当 print 从语句变成函数时,很容易破坏代码。所以现在不要担心 Python 3。

此外,仅仅因为版本号的原因,不要被误导认为 Python 2 已经过时或者你必须按照时间线顺序学习。换句话说,Python 2.7 将比 Python 3.0 和 3.1 更加新。 (3.2 直到今年年底才会发布。) 再次强调,Python 2 并没有停止开发 - 2.x 和 3.x 都在积极开发中。所以,像其他人一样,我建议您从任何 Python 2.x 开始。

另外,我让出版商在最新的印刷版(第五版!)的书籍 Core Python Programming 中添加了两个新附录(C和D),一个关于 Python 3.x,另一个则是关于 2.6 的重要性以及它在帮助用户过渡到 Python 3 中所扮演的角色。

最后,我一直在就 Python 3 进行演讲,并介绍与 Python 2 的主要区别。这里是我几个月前在 PyCon 上做的 一个演讲,其中包括幻灯片演示。


0

我在Google App Engine项目中使用2.5版本,在我的Django项目中使用2.6版本。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接