首页

《Python高级编程》PDF版本下载

标签:Python高级编程,setuptools,itertools模块,super缺陷,CloneDigger,Atomisator概述     发布时间:2016-12-13   
  • 云盘下载:
  • [提取码:0000]
  • 本地下载:
       ( 需积分:2  )

一、目录介绍

Python高级编程副本.jpg

第1章 准备工作
1.1   安装Python 1
1.1.1 Python实现版本 2
1.1.2 在Linux环境下安装 3
1.1.3 在Windows环境下安装 5
1.1.4 在Mac OS X环境下安装 8
1.2   Python命令行 9
1.2.1 定制交互式命令行 10
1.2.2 iPython:增强型命令行 11
1.3   安装setuptools 12
1.3.1 工作原理 12
1.3.2 使用EasyInstall安装setuptools 13
1.3.3 将MinGW整合到distutils中 15
1.4   工作环境 15
1.4.1 使用文本编辑器与辅助工具的组合 15
1.4.2 使用集成开发环境 19
1.5   小结 22

第2章 语法最佳实践——低于类级
2.1   列表推导 24
2.2   迭代器和生成器 25
2.2.1 生成器 27
2.2.2 协同程序 31
2.2.3 生成器表达式 33
2.2.4 itertools模块 34
2.3   装饰器 37
2.3.1 如何编写装饰器 39
2.3.2 参数检查 40
2.3.3 缓存 42
2.3.4 代理 45
2.3.5 上下文提供者 46
2.4   with和contextlib 47
2.4.1 contextlib模块 49
2.4.2 上下文实例 50
2.5   小结 52

第3章 语法最佳实践——类级
3.1   子类化内建类型 53
3.2   访问超类中的方法 55
3.2.1 理解Python的方法解析顺序 56
3.2.2 super的缺陷 60
3.3   最佳实践 63
3.4   描述符和属性 64
3.4.1 描述符 65
3.4.2 属性 71
3.5   槽 74
3.6   元编程 75
3.6.1 new方法 75
3.6.2 metaclass方法 77
3.7   小结 80

第4章 选择好的名称
4.1   PEP 8和命名最佳实践 81
4.2   命名风格 82
4.2.1 变量 82
4.2.2 函数和方法 86
4.2.3 属性 88
4.2.4 类 89
4.2.5 模块和包 89
4.3   命名指南 90
4.3.1 使用“has”或“is”前缀命名布尔元素 90
4.3.2 用复数形式命名序列元素 90
4.3.3 用显式的名称命名字典 90
4.3.4 避免通用名称 91
4.3.5 避免现有名称 91
4.4   参数最佳实践 92
4.4.1 根据迭代设计构建参数 92
4.4.2 信任参数和测试 93
4.4.3 小心使用*args和**kw魔法参数 94
4.5   类名 96
4.6   模块和包名称 96
4.7   使用API 97
4.7.1 跟踪冗长 97
4.7.2 构建命名空间树 98
4.7.3 分解代码 100
4.7.4 使用Egg 101
4.7.5 使用deprecation过程 101
4.8   有用的工具 102
4.8.1 Pylint 103
4.8.2 CloneDigger 104
4.9   小结 105

第5章 编写一个包
5.1   用于所有包的公共模式 106
5.2   基于模板的方法 118
5.2.1 Python Paste 118
5.2.2 创建模板 120
5.3   创建包模板 120
5.4   开发周期 125
5.5   小结 128

第6章 编写一个应用程序
6.1   Atomisator概述 129
6.2   整体描述 130
6.3   工作环境 131
6.3.1 添加一个测试运行程序 133
6.3.2 添加一个包结构 133
6.4   编写各个包 134
6.4.1 atomisator.parser 134
6.4.2 atomisator.db 139
6.4.3 atomisator.feed 143
6.4.4 atomisator.main 145
6.5   分发Atomisator 147
6.6   包之间的依赖性 148
6.7   小结 149

第7章 使用zc.buildout
7.1   zc.buildout原理 151
7.1.1 配置文件结构 151
7.1.2 buildout命令 152
7.1.3 recipe 154
7.1.4 Atomisator buildout环境 157
7.1.5 更进一步 158
7.2   发行与分发 159
7.2.1 发行包 160
7.2.2 添加一个发行配置文件 160
7.2.3 构建和发行应用程序 161
7.3   小结 162

第8章 代码管理
8.1   版本控制系统 163
8.1.1 集中式系统 163
8.1.2 分布式系统 165
8.1.3 集中还是分布 167
8.1.4 Mercurial 167
8.1.5 使用Mercurial进行项目管理 171
8.2   持续集成 178
8.3   小结 183

第9章 生命周期管理
9.1   不同的方法 184
9.1.1 瀑布开发模型 184
9.1.2 螺旋开发模型 185
9.1.3 迭代开发模型 185
9.2   定义生命周期 187
9.2.1 计划 188
9.2.2 开发 188
9.2.3 整体调试 188
9.2.4 发行 188
9.3   建立一个跟踪系统 189
9.3.1 Trac 189
9.3.2 使用Trac管理项目生命周期 194
9.4   小结 196

第10章 编写项目文档
10.1   技术性写作的7条规则 197
10.1.1 分两步编写 198
10.1.2 以读者为目标 199
10.1.3 使用简单的风格 199
10.1.4 限制信息的范围 200
10.1.5 使用真实的代码示例 200
10.1.6 保持简单,够用即可 201
10.1.7 使用模板 202
10.2   reStructuredText入门 202
10.2.1 小节结构 204
10.2.2 列表 205
10.2.3 内联标签 205
10.2.4 文字块 206
10.2.5 链接 206
10.3   构建文档 207
10.4   建立自己的工件集 214
10.5   小结 220

第11章 测试驱动开发
11.1   我不测试 221
11.1.1 测试驱动开发原理 221
11.1.2 哪一类测试 225
11.2   我测试 229
11.2.1 Unittest的缺陷 229
11.2.2 Unittest替代品 230
11.2.3 仿真和模拟 236
11.2.4 文档驱动开发 240
11.3   小结 242

第12章 优化:通用原则和剖析技术
12.1   优化的3条规则 243
12.1.1 首先使它能够正常工作 243
12.1.2 从用户的观点进行 244
12.1.3 保持代码易读(从而易于维护) 245
12.2   优化策略 245
12.2.1 寻找其他原因 245
12.2.2 度量硬件 246
12.2.3 编写速度测试 246
12.3   查找瓶颈 247
12.3.1 剖析CPU的使用情况 247
12.3.2 剖析内存使用情况 256
12.3.3 剖析网络使用情况 262
12.4 小结 263

第13章 优化:解决方案
13.1   降低复杂度 265
13.1.1 测量回路复杂度 265
13.1.2 测量大O记号 265
13.1.3 简化 268
13.2   多线程 274
13.2.1 什么是多线程 274
13.2.2 Python处理线程的方式 274
13.2.3 什么时候应该使用线程 275
13.3   多进程 280
13.4   缓存 284
13.4.1 确定性缓存 284
13.4.2 非确定性缓冲 287
13.4.3 主动式缓冲 288
13.5   小结 289

第14章 有用的设计模式
14.1   创建型模式 290
14.2   结构型模式 293
14.3   行为型模式 299
14.3.1 观察者 299
14.3.2 访问者 301
14.3.3 模板 304
14.4   小结 306

��
  • <<相关内容>>
<<热门下载>>