目 录
第1章 Python核心知识回顾 1
1.1 探索Python语言和解释器 1
1.2 回顾Python数据类型 3
1.2.1 数值类型:整数和浮点数 4
1.2.2 布尔类型 5
1.2.3 None类型 6
1.2.4 容器类型 6
1.2.5 字符串 7
1.2.6 字节和字节数组 9
1.2.7 元组 10
1.2.8 列表 11
1.2.9 字典 12
1.2.10 集 13
1.3 使用Python控制结构 15
1.3.1 结构化你的程序 15
1.3.2 使用序列、块和注释 16
1.3.3 选择一个执行路径 17
1.3.4 迭代 18
1.3.5 异常处理 20
1.3.6 上下文管理 21
1.4 在Python中读取和输出数据 21
1.4.1 与用户交互 21
1.4.2 使用文本文件 23
1.5 扩展Python 24
1.5.1 定义并使用函数 24
1.5.2 定义并使用类和对象 28
1.6 创建和使用模块和包 32
1.6.1 使用和创建模块 33
1.6.2 使用和创建包 34
1.7 创建示例包 35
1.8 使用第三方包 42
1.9 本章小结 43
第2章 Python脚本 47
2.1 访问操作系统 48
2.1.1 获得关于用户和他们的电脑的信息 49
2.1.2 获得当前进程信息 52
2.1.3 管理其他程序 54
2.1.4 更加高效地管理子进程 57
2.1.5 获取文件(和设备)的信息 60
2.1.6 浏览和操纵文件系统 62
2.1.7 探索目录树深度 68
2.2 使用日期和时间 71
2.2.1 使用time模块 71
2.2.2 datetime模块介绍 74
2.2.3 calendar模块介绍 75
2.3 处理常见的文件格式 76
2.3.1 使用逗号分隔的数值 76
2.3.2 使用Config文件 82
2.3.3 操作XML和HTML文件 85
2.4 使用ctypes和pywin32访问原生API 93
2.4.1 访问操作系统库 94
2.4.2 使用COM访问Windows应用 96
2.5 涉及多应用的自动化任务 97
2.5.1 使用Python 98
2.5.2 使用操作系统工具 98
2.5.3 使用数据文件 98
2.5.4 使用第三方模块 98
2.5.5 通过命令行接口与子进程交互 99
2.5.6 为基于服务器的应用使用Web服务 99
2.5.7 使用一个原生代码API 99
2.5.8 使用GUI机器人学 99
2.6 本章小结 100
第3章 管理数据 103
3.1 使用Python存储数据 104
3.1.1 使用DBM作为持久化字典 104
3.1.2 使用Pickle存取对象 109
3.1.3 使用shelve访问对象 111
3.2 使用Python分析数据 116
3.2.1 使用Python的内置特性分析数据 116
3.2.2 使用itertools分析数据 119
3.2.3 使用itertools分析LendyDB数据 124
3.3 使用SQL管理数据 126
3.3.1 关系型数据库的概念 126
3.3.2 结构化查询语言 127
3.3.3 跨表链接数据 134
3.3.4 多对多关系 140
3.4 从LendyDB迁移到SQL
数据库 143
3.4.1 从Python访问SQL 143
3.4.2 创建LendyDB SQL数据库 145
3.4.3 插入测试数据 146
3.4.4 创建一个LendyDB API 148
3.5 探索其他数据管理选择 154
3.5.1 主从数据库 154
3.5.2 NoSQL 155
3.5.3 云计算 155
3.5.4 使用RPy进行数据分析 156
3.6 本章小结 157
第4章 创建桌面应用 161
4.1 组织应用程序 162
4.2 创建命令行界面 163
4.2.1 创建数据层 163
4.2.2 创建核心逻辑层 165
4.2.3 创建用户界面 169
4.3 使用cmd模块创建命令行界面 173
4.4 读取命令行参数 175
4.5 用一些对话框让命令行界面变得生动 176
4.6 使用Tkinter编程GUI 180
4.7 创建简单的GUI 183
4.8 创建Tic-Tac-Toe GUI 186
4.8.1 勾勒一个UI设计 186
4.8.2 创建菜单 187
4.8.3 创建Tic-Tac-Toe面板 188
4.8.4 将GUI连接到游戏 189
4.9 扩展Tkinter 194
4.9.1 使用tix 194
4.9.2 使用ttk 198
4.10 再次回顾借出库 199
4.11 探索其他Python GUI工具包 207
4.11.1 wxPython 207
4.11.2 PyQt 208
4.11.3 PyGTK 209
4.11.4 原生GUI:Cocoa和PyWin32 209
4.11.5 Dabo 210
4.12 存储本地数据 210
4.12.1 存储特定于应用的数据 211
4.12.2 存储用户选择偏好 211
4.12.3 存储应用状态 212
4.12.4 记录错误信息 212
4.13 理解本地化 214
4.13.1 使用区域设置 214
4.13.2 在Python中使用Unicode 216
4.13.3 使用gettext 218
4.14 本章小结 220
第5章 Python在Web中的应用 223
5.1 Python在Web中的应用 224
5.1.1 Web应用的组成部分 225
5.1.2 客户端-服务器关系 226
5.1.3 中间件和MVC 226
5.1.4 HTTP方法和头信息 227
5.1.5 什么是API 230
5.2 使用Python进行Web编程 234
5.3 有关Python和Web的更多知识 247
5.3.1 静态网站生成器 247
5.3.2 Web框架 247
5.4 使用Python跨网工作 248
5.4.1 XML-RPC 248
5.4.2 套接字服务器 249
5.5 更多Python网络编程的乐趣 252
5.6 本章小结 253
第6章 Python在更大项目中的应用 255
6.1 使用doctest模块测试 256
6.2 使用unittest模块测试 261
6.3 Python中的测试驱动开发 265
6.4 调试Python代码 266
6.5 工作在更大的Python项目中 275
6.6 发布Python包 279
6.7 本章小结 281
第7章 探索Python前沿技术 283
7.1 使用Python绘图 283
7.1.1 使用turtle graphics 284
7.1.2 使用GUI Canvas对象 284
7.1.3 绘制数据 284
7.1.4 使用imghdr 285
7.1.5 Pillow简介 285
7.1.6 试试ImageMagick 285
7.2 使用Python辅助科学 286
7.2.1 SciPy简介 286
7.2.2 使用Python辅助生物科学 287
7.2.3 使用GIS 287
7.2.4 处理语言 287
7.2.5 综述 288
7.3 使用Python开发游戏 288
7.3.1 增强PyGame经验 288
7.3.2 探索其他选项 289
7.4 进入电影领域 289
7.5 与其他语言集成 290
7.5.1 Jython 291
7.5.2 IronPython 291
7.5.3 Cython 292
7.5.4 Tcl/Tk 292
7.6 进入物理领域 293
7.6.1 serial选项介绍 293
7.6.2 RaspberryPi编程 294
7.6.3 与Arduino对话 294
7.6.4 探索其他选项 294
7.7 创建Python 295
7.7.1 修复bug 295
7.7.2 文档化 295
7.7.3 测试 295
7.7.4 添加特性 296
7.7.5 参加会议 296
7.8 本章小结 296
附录A 练习答案 299
附录B Python标准模块 315
附录C 可用Python资源 323
· · · · · · (
收起)