关于第二版

    在本书第一版出版之后,随着2. 0版的发布,Python进入了自己的第二个时代。自那之后,这门语言的重大进步为其带来了全面而持续的成功和认可。摒除了缺陷,加入了新特点,这为全球的Python开发者带来了新一级别的能力和挑战。我真的很担心,这本续作能否在涵盖所有激动人心的新特点的同时还保持原来简单易懂的特点。本书涵盖了2006年秋发布的Python 2. 5版本,乃至一些关于将来2. 6版的预告。如同第一版一样,我们的目标是让本书所有主题不受版本的影响,让读者能终身受用,而不是很快被淘汰。

    Python的创始人Guido van Rossum一直慢慢酝酿着Python的下一次大转变,他亲切地称之为“Python3000”。“Python 3000”和它的缩写“Py3k”都只是Python 3. 0的代号。它会和2. x版本平行开发。尽管会产生一些和过去Python版本的不兼容,但是核心团队会尽全力确保绝大部分的向下兼容性(这也是Python新版本研发的惯例)。我们更加期盼能在摒除原有设计缺陷和争议的同时,添加更多有趣的特性。

    在本版中加入的新主题包括:

    • 布尔型和集合类型(第5章和第7章)

    • 新式类(第13章)

    • 子类、内建类
    • 静态方法和类方法
    • slot
    • 属性
    • 描述符
    • 元类

    • 函数(第11章)

    • 生成器
    • 函数(与方法)装饰器
    • 静态嵌套作用域
    • 内部函数
    • 闭包
    • Currying和偏函数应用

    • 循环结构(第8章)

    • 迭代器
    • 列表解析
    • 生成器表达式

    • 扩展导入语法(第12章)

    • as关键字
    • 多行导入
    • 绝对导入
    • 相对导入

    • 改良的异常处理功能(第10章)

    • with语句
    • try-except-finally语句

    此外,我们很高兴在本书中加入3章新内容:第17章、第21章和第23章。这3章里面有很多中级的内容会经常用到。所有原来的章节都已经更新到Python的最新版本。