我应该从Python 3.0开始吗?

时间:2009-08-03 14:52:17

标签: python python-3.x

最近我决定扩展我的编程视野并学习python编程语言。虽然我在大学和一两个项目的工作中使用了python,但我绝不是专家。我的问题如下:我应该打扰2.x版本还是应该直接跳到3.0?我倾向于3.0,因为我将编程应用程序更多用于个人/学习用途,但我想在开始之前看看是否有任何好的论据反对它。

8 个答案:

答案 0 :(得分:20)

绝对不是3.0 - 3.1已经出局,并且在各方面都更稳定,更好,更快;在这个时候从3.0开始是完全没有意义的,如果你想要占用3系列它应该在所有账户上都是3.1。

至于2.6 vs 3.1,3.1是一种更好的语言(特别是因为删除了多年来已经积累但是必须留在2. *以便向后兼容)但是所有其他生态系统(从扩展到工具,从书籍到集体知识)仍然非常支持2.6 - 如果你不关心能够使用(例如)某些GUI或科学扩展,在App Engine上部署,使用COM编写Windows脚本,有一个spiffy第三方IDE,依此类推,3.1是可取的,但如果你关心这些事情,那么现在还是2. *。

答案 1 :(得分:8)

使用3.1

为什么?

1)因为只要每个人都在使用2.6,这些库就没有理由迁移到3.1。只要这些库没有移植到3.1,你就会选择不使用3.1的优势,或者只使用使用后端功能集的hackish解决方案中途完成工作。 成为一名前瞻思想家并帮助推动Python前进。

2)如果你现在学习并使用3.1,你将不必在质量端口完成后重新学习它。我知道有些人说你不需要学习太多,但为什么要学习旧的废话呢? Python本身正朝着3.1 方向发展,图书馆将向3.1迈进,而且必须追赶并重新学习您已经使用的语言。

3) 3.1是一个更好的语言,比2.6更稳定,更一致......这是正常的。从2.6中吸取的经验教训全部注入3.1以使其更好。 这是一个名为PROGRESS 的过程。这就是为什么没有人仍然使用Windows 3.1。这是事情向前发展的方式。为什么你认为他们在第一时间回到移植功能集的麻烦呢?

4)如果你正在学习Python,并且学习2.6,那么当你对这门语言非常熟悉的时候,端口就会出来,你将不得不重新学习库和语言。如果你从3.1开始,那么当你对语言感到满意时,端口就会出来,然后你可以学习你感兴趣的库。这是一个更顺畅的过程。< / p>

5)成为更好的开发者。如果你必须学习并重新学习相同的东西,你的理解就不会很深。通过只学习一次这种语言及其库,您将有更多时间使用它们而不是重新学习语法。这可以让您更好地理解它们。如果你真的因为在图书馆上放弃而错过了一些作品?写下他们。您可能不需要整个库,通常只能编写您需要的那些部分,并为自己开发工具。这再次有助于您更好地,更深入地理解语言。

答案 2 :(得分:7)

简短回答:从Python 2.6开始。

为什么:当您可以利用他人的工作时,编程更有趣,更有用。这意味着经常使用第三方库。许多流行的Python库还没有3.x支持。 PIL和NumPy / SciPy浮现在脑海中。我最喜欢的翻译,ipython,还没有使用3.0。许多单元测试框架和Web框架还没有在3.0上。

因此,如果你从3.x开始,很多门都将关闭,至少在3.x移植开始之前。诚然,Python 3.x中有许多不错的功能,但其中一些已经被反向移植到2.6,还有一些将它变成2.7。所以现在坚持使用2.6,并在一年左右的时间内重新评估3.x.

答案 3 :(得分:4)

我认为直接进入3.0会更好。除非你有一个遗留的代码库来应对,否则学习2.xx的做法几乎没有什么好处。

在Python世界中(与其他大多数人一样),发布版本往往需要一段时间才能迁移到所有子项目,但如果您发现需要转换回2.xx,我不会我认为你会发现重新学习的东西特别痛苦。

答案 4 :(得分:3)

除非您有特殊原因,否则您应该使用您学习的任何编程语言的最新版本。由于您没有不适用于Python 3.0的现有项目,因此您可以随意使用最新版本。

答案 5 :(得分:2)

使用python 3.1,Luke。

答案 6 :(得分:2)

在其他库已经赶上它的支持之前,不应该使用Python 3.1。

你现在应该使用2.6。它有几个向后移植的3.x功能,因此以后迁移到3.x并不困难,你也不会学习过时的做法。

答案 7 :(得分:2)

好消息是,学习Python 2.x和3.x并不是那么难。您可以安装最新的2.x版本作为在系统中注册的版本,默认情况下运行Python脚本,但也可以安装最新的3.x版本,以便在需要时明确启动。这就是我在Windows Vista系统上的功能。

然后,用于学习2.x和3.x版本之间差异的关键文档是:

http://docs.python.org/3.1/whatsnew/3.0.html

如果您阅读基于2.x的Python学习资料,并且还参考上面的“Python 3.0中的新功能”链接,您将了解事情的变化。另请参阅其他最新的文档,例如3.0和3.1之间的差异,但上面的链接是理解2.x与3.x更改的主要链接。