Python程序设计开发宝典PDF电子书下载
- 电子书积分:13 积分如何计算积分?
- 作 者:董付国著
- 出 版 社:北京:清华大学出版社
- 出版年份:2017
- ISBN:9787302472100
- 页数:388 页
第1章 管中窥豹:Python概述 1
1.1 Python是这样一种语言 1
1.2 Python版本之争 1
1.3 Python编程规范与代码优化建议 2
1.4 Python虚拟开发环境的搭建 4
1.5 Eclipse+PyDev环境搭建和使用 4
1.6 安装扩展库的几种方法 6
1.7 标准库与扩展库中对象的导入与使用 7
1.7.1 import模块名[as别名] 8
1.7.2 from模块名import对象名[as别名] 8
1.7.3 from模块名import 9
1.7.4 模块导入时的搜索路径 10
1.8 编写与发布自己的包 10
1.9 Python程序伪编译与打包 12
1.10 从命令行参数和配置文件获取信息 14
第2章 万丈高楼平地起:运算符、表达式与内置对象 16
2.1 Python常用内置对象 16
2.1.1 常量与变量 17
2.1.2 数字 18
2.1.3 字符串 21
2.1.4 列表、元组、字典、集合 22
2.2 Python运算符与表达式 23
2.2.1 算术运算符 24
2.2.2 关系运算符 25
2.2.3 成员测试运算符in与同一性测试运算符is 26
2.2.4 位运算符与集合运算符 27
2.2.5 逻辑运算符 28
2.2.6 矩阵乘法运算符@ 29
2.2.7 补充说明 29
2.3 Python关键字简要说明 30
2.4 Python常用内置函数用法精要 31
2.4.1 类型转换与类型判断 34
2.4.2 最值与求和 38
2.4.3 基本输入输出 40
2.4.4 排序与逆序 42
2.4.5 枚举与迭代 43
2.4.6 map()、reduce()、filter() 45
2.4.7 range() 48
2.4.8 zip() 48
2.4.9 eval()、exec() 49
第3章 玄之又玄,众妙之门:详解Python序列结构 51
3.1 列表:打了激素的数组 51
3.1.1 列表创建与删除 52
3.1.2 列表元素访问 53
3.1.3 列表常用方法 54
3.1.4 列表对象支持的运算符 59
3.1.5 内置函数对列表的操作 61
3.1.6 使用列表模拟向量运算 62
3.1.7 列表推导式语法与应用案例 63
3.1.8 切片操作的强大功能 70
3.2 元组:轻量级列表 73
3.2.1 元组创建与元素访问 73
3.2.2 元组与列表的异同点 74
3.2.3 生成器推导式 75
3.3 字典:反映对应关系的映射类型 76
3.3.1 字典创建与删除 77
3.3.2 字典元素的访问 77
3.3.3 元素的添加、修改与删除 79
3.3.4 标准库collections中与字典有关的类 80
3.4 集合:元素之间不允许重复 81
3.4.1 集合对象的创建与删除 81
3.4.2 集合操作与运算 82
3.4.3 不可变集合frozenset 84
3.4.4 集合应用案例 84
3.5 序列解包的多种形式和用法 86
3.6 标准库中的其他常用数据类型 88
3.6.1 枚举类型 88
3.6.2 数组类型 89
3.6.3 队列 90
3.6.4 具名元组 92
3.6.5 堆 92
第4章 反者,道之动:程序控制结构 94
4.1 条件表达式 94
4.2 选择结构 96
4.2.1 单分支选择结构 96
4.2.2 双分支选择结构 97
4.2.3 多分支选择结构 98
4.2.4 选择结构的嵌套 99
4.2.5 构建跳转表实现多分支选择结构 100
4.3 循环结构 100
4.3.1 for循环与while循环 100
4.3.2 break与continue语句 101
4.3.3 循环代码优化技巧 102
4.4 精彩案例赏析 103
第5章 代码复用技术(一):函数 111
5.1 函数定义与使用 111
5.1.1 基本语法 111
5.1.2 函数嵌套定义、可调用对象与修饰器 113
5.1.3 函数对象成员的动态性 117
5.1.4 函数递归调用 117
5.2 函数参数 118
5.2.1 位置参数 120
5.2.2 默认值参数 120
5.2.3 关键参数 122
5.2.4 可变长度参数 122
5.2.5 强制函数的某些参数必须以关键参数形式进行传值 123
5.2.6 强制函数的所有参数必须以位置参数形式进行传值 124
5.2.7 传递参数时的序列解包 125
5.2.8 标注函数参数与返回值类型 126
5.3 变量作用域 127
5.3.1 全局变量与局部变量 127
5.3.2 nonlocal变量 130
5.4 lambda表达式 130
5.5 生成器函数设计要点 133
5.6 偏函数与函数柯里化 135
5.7 单分发器与泛型函数 136
5.8 协程函数 138
5.9 注册程序退出时必须执行的函数 140
5.10 回调函数原理与实现 140
5.11 精彩案例赏析 141
第6章 代码复用技术(二):面向对象程序设计 167
6.1 类的定义与使用 167
6.1.1 基本语法 167
6.1.2 type类 168
6.1.3 定义带修饰器的类 169
6.2 数据成员与成员方法 171
6.2.1 私有成员与公有成员 171
6.2.2 数据成员 172
6.2.3 成员方法、类方法、静态方法、抽象方法 173
6.2.4 属性 175
6.2.5 类与对象的动态性、混入机制 177
6.3 继承、多态、依赖注入 179
6.3.1 继承 179
6.3.2 多态 181
6.3.3 依赖注入技术的不同实现方法 182
6.4 特殊方法与运算符重载 185
6.5 精彩案例赏析 187
6.5.1 自定义队列 187
6.5.2 自定义栈 191
6.5.3 自定义集合 193
6.5.4 自定义数组 199
6.5.5 自定义双链表 204
6.5.6 自定义常量类 206
6.5.7 自定义不允许修改值的字典 207
6.5.8 自定义支持with关键字的类 208
第7章 文本处理(一):字符串 209
7.1 字符串编码格式简介 210
7.2 转义字符与原始字符串 211
7.3 字符串格式化 212
7.3.1 使用%符号进行格式化 212
7.3.2 使用format()方法进行字符串格式化 213
7.3.3 格式化的字符串常量 215
7.3.4 使用Template模板进行格式化 215
7.4 字符串常用操作 216
7.4.1 find()、rfind()、index()、rindex()、count() 216
7.4.2 split()、rsplit()、partition()、rpartition() 217
7.4.3 join() 219
7.4.4 lower()、upper()、capitalize()、title()、swapcase() 220
7.4.5 replace()、maketrans()、translate() 220
7.4.6 strip()、rstrip()、lstrip() 221
7.4.7 startswith()、endswith() 222
7.4.8 isalnum()、isalpha()、isdigit()、isdecimal()、isnumeric()、isspace()、isupper()、islower() 222
7.4.9 center()、ljust()、rjust()、zfill() 223
7.4.10 字符串对象支持的运算符 224
7.4.11 适用于字符串对象的内置函数 226
7.4.12 字符串对象的切片操作 228
7.5 其他有关模块 228
7.5.1 textwrap模块 228
7.5.2 zlib模块提供的压缩功能 231
7.6 字符串常量 232
7.7 可变字符串 232
7.8 中英文分词 234
7.9 汉字到拼音的转换 235
7.10 精彩案例赏析 236
第8章 文本处理(二):正则表达式 239
8.1 正则表达式语法 239
8.1.1 正则表达式基本语法 239
8.1.2 正则表达式扩展语法 240
8.1.3 正则表达式锦集 241
8.2 直接使用正则表达式模块re处理字符串 242
8.3 使用正则表达式对象处理字符串 246
8.4 match对象 248
8.5 精彩案例赏析 250
第9章 数据永久化:文件内容操作 257
9.1 文件操作基本知识 258
9.1.1 内置函数open() 258
9.1.2 文件对象属性与常用方法 260
9.1.3 上下文管理语句with 261
9.2 文本文件内容操作案例精选 261
9.3 二进制文件操作案例精选 266
9.3.1 使用pickle模块读写二进制文件 267
9.3.2 使用struct模块读写二进制文件 268
9.3.3 使用shelve模块操作二进制文件 269
9.3.4 使用marshal模块操作二进制文件 270
9.3.5 其他常见类型二进制文件操作案例 271
第10章 文件与文件夹操作 281
10.1 os模块 281
10.2 os.path模块 284
10.3 shutil模块 286
10.4 其他常用模块 287
10.4.1 glob模块 287
10.4.2 fnmatch模块 288
10.5 精彩案例赏析 289
第11章 代码质量保障:异常处理结构、程序调试与测试 293
11.1 异常处理结构 293
11.1.1 异常的概念与表现形式 293
11.1.2 Python内置异常类层次结构 294
11.1.3 异常处理结构 296
11.1.4 断言与上下文管理语句 301
11.2 文档测试doctest 301
11.3 单元测试unittest 304
11.4 覆盖测试 307
11.5 软件性能测试 308
11.6 代码调试 310
11.6.1 使用IDLE调试 310
11.6.2 使用Eclipse+PyDev进行代码调试 311
11.6.3 使用pdb调试 313
第12章 多任务与并行处理:线程、进程、协程、分布式、GPU加速 318
12.1 多线程编程 318
12.1.1 线程概念与标准库threading 318
12.1.2 线程对象 320
12.1.3 线程调度 323
12.1.4 Lock/RLock对象 324
12.1.5 Condition对象 326
12.1.6 Queue对象 328
12.1.7 Event对象 332
12.1.8 Semaphore与BoundedSemaphore 333
12.1.9 Barrier对象 334
12.2 多进程编程 335
12.2.1 进程创建与管理 335
12.2.2 进程同步技术 336
12.2.3 Pool对象 337
12.2.4 Manager对象 341
12.2.5 Listener与Client对象 345
12.2.6 进程间数据交换与共享 345
12.2.7 标准库subprocess 348
12.3 协程 349
12.4 concurrent.futures模块提供的并发执行功能 351
12.5 pySpark并行计算与分布式计算框架 353
12.6 GPU编程 359
12.6.1 使用pycuda实现GPU加速 359
12.6.2 使用pyopencl实现GPU加速 360
12.6.3 使用tensorflow实现GPU加速 362
第13章 互通互联:asyncio提供的网络通信功能 364
13.1 Transport类与Protocol类 364
13.2 StreamReader与StreamWriter 369
附录 精彩在继续 373
附录A GUI开发 373
附录B SQLite数据库操作 376
附录C 计算机图形学编程 377
附录D 图像编程 380
附录E 数据分析、机器学习、科学计算可视化 383
附录F 密码学编程 383
附录G 系统运维 384
附录H Windows系统编程 384
附录I 软件分析与逆向工程 386
参考文献 388
- 《指向核心素养 北京十一学校名师教学设计 英语 七年级 上 配人教版》周志英总主编 2019
- 《区块链DAPP开发入门、代码实现、场景应用》李万胜著 2019
- 《设计十六日 国内外美术院校报考攻略》沈海泯著 2018
- 《教育学考研应试宝典》徐影主编 2019
- 《计算机辅助平面设计》吴轶博主编 2019
- 《高校转型发展系列教材 素描基础与设计》施猛责任编辑;(中国)魏伏一,徐红 2019
- 《景观艺术设计》林春水,马俊 2019
- 《程序逻辑及C语言编程》卢卫中,杨丽芳主编 2019
- 《高含硫气藏开发腐蚀控制技术与实践》唐永帆,张强 2018
- 《高等教育双机械基础课程系列教材 高等学校教材 机械设计课程设计手册 第5版》吴宗泽,罗圣国,高志,李威 2018
- 《大学计算机实验指导及习题解答》曹成志,宋长龙 2019
- 《指向核心素养 北京十一学校名师教学设计 英语 七年级 上 配人教版》周志英总主编 2019
- 《大学生心理健康与人生发展》王琳责任编辑;(中国)肖宇 2019
- 《大学英语四级考试全真试题 标准模拟 四级》汪开虎主编 2012
- 《大学英语教学的跨文化交际视角研究与创新发展》许丽云,刘枫,尚利明著 2020
- 《北京生态环境保护》《北京环境保护丛书》编委会编著 2018
- 《复旦大学新闻学院教授学术丛书 新闻实务随想录》刘海贵 2019
- 《大学英语综合教程 1》王佃春,骆敏主编 2015
- 《大学物理简明教程 下 第2版》施卫主编 2020
- 《指向核心素养 北京十一学校名师教学设计 英语 九年级 上 配人教版》周志英总主编 2019