python 2.x 和 3.x 系列 —— 同时教授 3.x 和 2.x | 前言 |《学习 python:强大的面向对象编程(第 5 版)》| python 技术论坛-金年会app官方网
为了解决 3.x 和 2.x 的对立,并且满足所有潜在读者的需求,本书已经升级到 python 3.3 和 python 2.7,并且应该适用于 3.x 和 2.x 系列的后续版本。它适用于 使用 python 2.x 的程序员和使用 python 3.x 的程序员和鉴于两者之间的程序员。
也就是说你可以使用这本书来学习任意一个 python 系列。虽然经常强调 3.x ,但也提及了 2.x 的不同和工具也在这个过程中被提及。对那些使用更旧代码的程序员来说,虽然这两种版本都是很相似的,但是它们在一些重要的情况下有分歧。当这种情况出现时,我会把它们指出来。
比如在大多数例子中,我将使用 3.x 的 print 调用,但是也会描述 2.x 的 print 语句,这样你就能理解更早的代码,然后还将经常使用可移植的在两个系列中运行的打印技术。还将自由地介绍新的特性,比如 3.x 中的 nonlocal 语句和从 2.6 和 3.0 开始可用的字符串 format 方法,还将指出什么时候这些扩展在更老的 python 中不存在。
在某种程度上,这版书还解决了其它 python 2.x 和 3.x 的问题,虽然一些更老的 2.x 版本的代码可能不能运行本书中所有的例子。比如虽然类装饰器从 python 2.6 和 3.0 就都可用了,但你不能在任何没有这个功能的更老的 python 2.x 中使用它们。再次参阅附录 c 中的变更表,获取最近 2.x 和 3.x 变化的摘要。