为什么Python 3(或更高版本)比Python 2更好?

时间:2010-08-02 00:56:08

标签: python python-3.x python-2.x

大约10年前,我学习了Python作为我的第一个严肃的(非BASIC)语言。从那以后,我学到了很多其他的东西,但我倾向于用Python思考。当我查看更改列表时,我没有看到一个我需要此功能。我经常对自己说,嗯这是一个很好的方法,但为什么现在要改变呢?

改变默认楼层划分的事情对于大项目来说可能是一个真正的痛苦。似乎主要参与者都在拖延他们的脚步。什么是让我想投资另一条学习曲线的关键特征?

4 个答案:

答案 0 :(得分:10)

作为一项关键功能,很多人似乎都很欣赏(supposedly)透明的unicode支持。他们将它从str(8位字符数组/默认字符串类型)和unicode(unicode字符串)更改为str(默认(unicode compatable)字符串)和{{1} (二进制数据为8位'字符串')。

(我认为从字符串中分离字节列表是个好主意,但我也讨厌unicode,所以如果有的话,这对我个人来说会更糟糕。)

答案 1 :(得分:3)

可以在python wiki中找到对此的一个很好的讨论; Should I use Python 2 or Python 3 for my development activity?

答案 2 :(得分:1)

  

改变默认楼层的事情   分裂可能是一个真正的痛苦   改变大项目。

如果您在使用//from __future__ import division引入Python 2.2时已经开始进行 8年前的更改,那么现在就不会感到痛苦。就个人而言,我很高兴终于摆脱旧式的分裂!

Python 3.x的第二个最喜欢的功能是str / bytes区别。除了简化Unicode支持之外,bytes对于数据库BLOB来说比buffer更方便。

答案 3 :(得分:0)

On Teaching Programming With Python 3.0虽然有点陈旧,但是我读过有关Py3k优点的最佳文章之一。