Python 提供了大量的内置数据结构,包括列表,集合以及字典。大多数情况下使用这些数据结构是很简单的。但是,我们也会经常碰到诸如查询,排序和过滤等这些普遍存在的问题。因此,这一章的目的就是讨论这些比较常见的问题和算法,另外也会给出在集合模块 collections
当中操作这些数据结构的方法。
几乎所有有用的程序都会涉及到某些文本处理,不管是解析数据还是产生输出。 这一章将重点关注文本的操作处理,比如提取字符串,搜索,替换以及解析等。 大部分的问题都能简单的调用字符串的内建方法完成。 但是,一些更为复杂的操作可能需要正则表达式或者强大的解析器,所有这些主题我们都会详细讲解。 并且在操作 Unicode 时候碰到的一些棘手的问题在这里也会被提及到。
在 Python 中执行整数和浮点数的数学运算时很简单的。 尽管如此,如果你需要执行分数、数组或者是日期和时间的运算的话,就得做更多的工作了。 本章集中讨论的就是这些主题。
迭代是 Python 最强大的功能之一。初看起来,你可能会简单的认为迭代只不过是处理序列中元素的一种方法。然而,绝非仅仅如此,还有很多你不可能知道的,比如创建你自己的迭代器对象,在 itertools 模块中使用有用的迭代模式,构造生成器函数等。
需要反复理解的几个章节:4.2 代理迭代,4.4 实现迭代器协议
所有程序都要处理输入和输出。 这一章将涵盖处理不同类型的文件,包括文本和二进制文件,文件编码和其他相关的内容。 对文件名和目录的操作也会涉及到。
这一章主要讨论使用Python处理各种不同方式编码的数据,比如CSV文件,JSON,XML和二进制包装记录。 和数据结构那一章不同的是,这章不会讨论特殊的算法问题,而是关注于怎样获取和存储这些格式的数据。
其中
1、读取二进制数组写入文件,wait update。
2、读取嵌套和可变长二进制数据 ,wait update。
使用 def
语句定义函数是所有python程序员的基础。本章的目的是讲解一些更加高级和不常见的函数定义和使用模式。
涉及到的内容包括默认参数、任意数量参数,强制关键字参数、注解和闭包。
另外,一些高级的控制流和利用回调函数传递参数数据的技术也会在这里讲到。
其中:
1、7.8 减少可调用对象的参数个数 wait update。
参考:https://python3-cookbook.readthedocs.io/zh_CN/latest/index.html