第2章 符合Python语言习惯的代码
本章探讨使用Python表达想法的方式及其独特之处。如果你熟悉完成某些编程任务(如获取列表的最后一个元素、迭代和搜索)的标准方式,或者使用过其他编程语言(如C、C++和Java),就会发现Python提供了完成大多数常见任务的独特机制。
在编程中,惯用法是编写代码以执行特定任务的方式。这是一种常见的方式,每次都重复并遵循相同的结构。有人甚至认为这是一种模式,但不是设计模式(稍后将探讨)。主要的区别在于设计模式是高级理念,在某种程度上独立于语言,且不能直接转换为代码;而惯用法是具体的代码,是执行特定任务时编写代码的一种方式。
由于惯用法是代码,因此依赖于语言。每种语言都有自己的惯用法,即使用该语言完成任务的方式(例如,如何使用C或C++语言打开和写入文件)。如果代码遵循了这些惯用法,就说它符合习惯,在Python中,这被称为符合Python语言习惯。
为何要按照这些建议编写符合Python语言习惯的代码呢?原因有多个。首先,正如我们将看到并分析的那样,以符合Python语言习惯的方式编写的代码性能更高,同时更紧凑、更容易理解。这些都是我们希望代码具备的特征,它们让代码能够卓有成效地工作。
其次,第1章说过,整个开发团队熟悉相同的代码模式和结构很重要,这有助于他们专注于问题的本质,还可帮助他们避免犯错。
本章的目标如下。
● 明白索引和切片、正确地实现可通过索引访问的对象。
● 实现序列和其他可迭代的对象。
● 学习正确的上下文管理器使用方式以及如何编写有效的上下文管理器。
● 使用魔法方法编写更符合Python语言习惯的代码。
● 避免常见的Python错误,这些错误可能导致讨厌的副作用。
2.1节首先来探讨索引和切片。
2.1 索引和切片 ...
Get 编写整洁的Python代码(第2版) now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.