第1章 数字、字符串和元组
1.1 引言
1.2 创建有意义的名称和使用变量
1.3 使用大整数和小整数
1.4 在浮点数、小数和分数之间选择
1.5 在真除法和floor除法之间选择
1.6 重写不可变的字符串
1.7 使用正则表达式解析字符串
1.8 使用"template".format()构建复杂的字符串
1.9 通过字符列表构建复杂的字符串
1.10 使用键盘上没有的Unicode字符
1.11 编码字符串——创建ASCII和UTF-8字节
1.12 解码字节——如何根据字节获得正确的字符
1.13 使用元组
第2章 语句与语法
2.1 引言
2.2 编写Python脚本和模块文件——语法基础
2.3 编写长行代码
2.4 添加描述和文档
2.5 在文档字符串中编写RST标记
2.6 设计复杂的if…elif链
2.7 设计正确终止的while语句
2.8 避免break语句带来的潜在问题
2.9 利用异常匹配规则
2.10 避免except:子句带来的潜在问题
2.11 使用raise from语句链接异常
2.12 使用with语句管理上下文
第3章 函数定义
3.1 引言
3.2 使用可选参数设计函数
3.3 使用灵活的关键字参数
3.4 使用*分隔符强制使用关键字参数
3.5 编写显式的函数参数类型
3.6 基于偏函数选择参数顺序
3.7 使用RST标记编写清晰的文档字符串
3.8 围绕Python栈限制设计递归函数
3.9 根据脚本/库转换规则编写可重用脚本
第4章 内置数据结构——列表、集、字典
4.1 引言
4.2 选择数据结构
4.3 构建列表——字面量、append()和解析式
4.4 切片和分割列表
4.5 从列表中删除元素——del语句、remove()、pop()和filter()
4.6 反转列表的副本
4.7 使用set方法和运算符
4.8 从集中移除元素——remove()、pop()和差集
4.9 创建字典——插入和更新
4.10 从字典中移除元素——pop()方法和del语句
4.11 控制字典键的顺序
4.12 处理doctest示例中的字典和集
4.13 理解变量、引用和赋值
4.14 制作对象的浅副本和深副本
4.15 避免可变默认值作为函数参数
第5章 用户输入和输出
5.1 引言
5.2 使用print()函数的功能
5.3 使用input()和getpass()收集用户输入
5.4 使用"format".format_map(vars())进行调试
5.5 使用argparse模块获取命令行输入
5.6 使用cmd模块创建命令行应用程序
5.7 使用操作系统环境设置
第6章 类和对象的基础知识
6.1 引言
6.2 使用类封装数据和操作
6.3 设计操作类
6.4 设计数据类
6.5 使用__slots__优化对象
6.6 使用更复杂的集合
6.7 扩展集合——统计数据的列表
6.8 使用特性计算惰性属性
6.9 使用可设置的特性更新及早属性
第7章 高级类设计
7.1 引言
7.2 在继承和扩展之间选择——is-a问题
7.3 通过多重继承分离关注点
7.4 利用Python的鸭子类型
7.5 管理全局单例对象
7.6 使用更复杂的结构——列表映射
7.7 创建具有可排序对象的类
7.8 定义有序集合
7.9 从映射列表中删除元素
第8章 函数式编程和反应式编程
8.1 引言
8.2 使用yield语句编写生成器函数
8.3 使用生成器表达式栈
8.4 将转换应用于集合
8.5 选择子集——三种过滤方式
8.6 汇总集合——如何归约
8.7 组合映射和归约转换
8.8 实现there exists处理
8.9 创建偏函数
8.10 使用不可变数据结构简化复杂算法
8.11 使用yield from语句编写递归生成器函数
第9章 输入/输出、物理格式和逻辑布局
9.1 引言
9.2 使用pathlib模块处理文件名
9.3 使用上下文管理器读取和写入文件
9.4 替换文件,同时保留以前的版本
9.5 使用CSV模块读取带分隔符的文件
9.6 使用正则表达式读取复杂格式
9.7 读取JSON文档
9.8 读取XML文档
9.9 读取HTML文档
9.10 将CSV模块的DictReader更新为namedtuple读取器
9.11 将CSV模块的DictReader更新为namespace读取器
9.12 使用多个上下文读取和写入文件
第10章 统计编程和线性回归
10.1 引言
10.2 使用内置统计库
10.3 计算Counter对象中值的平均值
10.4 计算相关系数
10.5 计算回归参数
10.6 计算自相关
10.7 确认数据是随机的——零假设
10.8 查找异常值
10.9 通过一次遍历分析多个变量
第11章 测试
11.1 引言
11.2 使用文档字符串进行测试
11.3 测试抛出异常的函数
11.4 处理常见的doctest问题
11.5 创建单独的测试模块和包
11.6 组合unittest测试和doctest测试
11.7 涉及日期或时间的测试
11.8 涉及随机性的测试
11.9 模拟外部资源
第12章 Web服务
12.1 引言
12.2 使用WSGI实现Web服务
12.3 使用Flask框架实现RESTful API
12.4 解析请求中的查询字符串
12.5 使用urllib发送REST请求
12.6 解析U