《流畅的 Python》笔记 01 - 导读

本书特点

受到其他语言的影响,你大概能猜到 Python 会支持正则表达式,然后就会去查阅文档。 但是如果你从来没见过元组拆包(tuple unpacking),也没听过描述符(descriptor)这个概念,那么估计你也不会特地去搜索它们,然后就永远失去了使用这些 Python 独有的特性的机会。这也是本书试图解决的一个问题。

这本书并不是一本完备的 Python 使用手册,而是会强调 Python 作为编程语言独有的特性,这些特性或者是只有 Python 才具备的,或者是在其他大众语言里很少具备的。

本书的非目标读者

如果你才刚刚开始学习 Python,本书的内容会显得有点“超纲”。比难懂更糟糕的是,如果在学习 Python 的过程中过早接触本书的内容,你可能会误以为所有的 Python 代码都应该利用特殊方法和元编程(metaprogramming)技巧。我们知道,不成熟的抽象和过早优化一样,都会坏事。

本书内容概览

  • 第一部分,讲解 Python 的数据模型(data model),以及如何为了保证行为一致性而使用的特殊方法。
  • 第二部分,对各种集合类型包括序列(sequence)、映射(mapping)和集合(set),以及字符串(str)、字节序列(bytes)的特性的讲解。
  • 第三部分,讲解如何把函数作为一等对象(first-class object)来使用。
  • 第四部分,讲解类的构建,包括引用(reference)、“可变性”、实例的生命周期、集合类型、抽象基类、多重继承、操作符重载。
  • 第五部分,生成器(generator)、上下文管理器(context manager)、协程(coroutine)、yield from、并发性、面向事件的 I/O 。
  • 第六部分,再来讲解类。包括如何创建带属性的类、梳理函数、方法和描述符的关系、类装饰器(class decorator)、元类(metaclass)。

参考

  • 书中示例代码:https://github.com/fluentpython/example-code
  • 豆瓣读书:https://book.douban.com/subject/27028517/

廖杰良 - 2018-11-12

你可能感兴趣的:(《流畅的,Python》)