基础31
2.4 重点复习35
第3章类型与运算符36
3.1 内建类型37
3.1.1 数值类型37
3.1.2 字符串类型39
3.1.3 群集类型45
3.2 变量与运算符50
3.2.1 变量50
3.2.2 加减乘除运算52
3.2.3 比较与赋值运算56
3.2.4 逻辑运算57
3.2.5 位运算58
3.2.6 索引切片运算60
3.3 重点复习62
课后练习64
第4章流程语句与函数65
4.1 流程语句66
4.1.1 if分支判断66
4.1.2 while循环68
4.1.3 forin迭代70
4.1.4 pass、break、continue72
4.1.5 forComprehension72
4.2 定义函数74
4.2.1 使用def定义函数75
4.2.2 参数与自变量76
4.2.3 一级函数的运用79
4.2.4 lambda表达式83
4.2.5 初探变量作用域84
4.2.6 yield与yieldfrom87
4.3 重点复习90
课后练习91
第5章从模块到类93
5.1 模块管理94
5.1.1 用模块建立抽象层94
5.1.2 管理模块名称96
5.1.3 设置PTH文件99
5.2 初识面向对象101
5.2.1 定义类101
5.2.2 定义方法102
5.2.3 定义内部属性105
5.2.4 定义外部属性106
5.3 类语法的细节108
5.3.1 绑定与未绑定方法108
5.3.2 静态方法与类方法110
5.3.3 属性命名空间111
5.3.4 定义运算符114
5.3.5 __new__()、__init__()与__del__()116
5.4 重点复习118
课后练习120
第6章类的继承121
6.1 何谓继承122
6.1.1 继承共同行为122
6.1.2 鸭子类型124
6.1.3 重新定义方法125
6.1.4 定义抽象方法126
6.2 继承语法的细节128
6.2.1 初识object与super()128
6.2.2 Richcomparison方法130
6.2.3 使用enum枚举132
6.2.4 多重继承134
6.2.5 创建ABC(抽象基类)136
6.2.6 探讨super()138
6.3 文档与软件包资源141
6.3.1 DocStrings142
6.3.2 查询官方文档145
6.3.3 PyPI与pip146
6.4 重点复习147
课后练习148
第7章例外处理149
7.1 语法与继承结构150
7.1.1 使用try、except150
7.1.2 例外继承结构153
7.1.3 引发(raise)例外155
7.1.4 Python例外风格159
7.1.5 认识堆栈追踪160
7.1.6 提出警告信息163
7.2 例外与资源管理165
7.2.1 使用else、finally165
7.2.2 使用withas167
7.2.3 实现上下文管理器169
7.3 重点复习172
课后练习173
第8章open()与io模块175
8.1 使用open()函数176
8.1.1 file与mode参数176
8.1.2 buffering、encoding、errors、newlines参数180
8.1.3 stdin、stdout、stderr181
8.2 高级文件处理183
8.2.1 认识文件描述符183
8.2.2 认识io模块185
8.3 重点复习188
课后练习189
第9章数据结构190
9.1 hashable、iterable与orderable191
9.1.1 hashable协议191
9.1.2 iterable协议193
9.1.3 orderable协议196
9.2 高级群集处理199
9.2.1 认识群集结构199
9.2.2 使用collection模块201
9.2.3 __getitem__()、__setitem__()、__delitem__()208
9.2.4 使用collection.abc模块209
9.2.5 UserList、UserDict、UserString类211
9.3 重点复习211
课后练习213
第10章数据持续性与交换214
10.1对象序列化215
10.1.1使用pickle模块215
10.1.2使用shelve模块217
10.2数据库的处理219
10.2.1认识DB-API2.0219
10.2.2使用sqlite3模块220
10.2.3参数化SQL语句222
10.2.4简介交易223
10.3数据交换格式227
10.3.1CSV227
10.3.2JSON231
10.3.3XML235
10.4重点复习239
课后练习240
第11章常用内建模块241
11.1 日期与时间242
11.1.1 时间的度量242
11.1.2 年历与时区简介243
11.1.3 使用time模块245
11.1.4 使用datetime模块247
11.2 日志251
11.2.1 简介Logger251
11.2.2 使用Handler、Formatter与Filter253
11.2.3 使用logging.config255
11.3 正则表达式258
11.3.1 正则表达式简介258
11.3.2 Pattern与Match对象263
11.4 文件与目录266
11.4.1 使用os模块266
11.4.2 使用os.path模块268
11.4.3 使用glob模块270
11.5 重点复习272
课后练习273
第12章调试、测试与性能274
12.1 调试275
12.1.1 认识Debugger275
12.1.2 使用pdb模块277
12.2 测试281
12.2.1 使用assert断言281
12.2.2 编写doctest283
12.2.3 使用unittest单元测试286
12.3 性能288
12.3.1 timeit模块288
12.3.2 使用cProfile(profile)290
12.4 重点复习292
课后练习293
第13章并发与并行294
13.1 并发295
13.1.1 线程简介295
13.1.2 线程的启动与停止297
13.1.3 竞争、锁定、死锁300
13.1.4 等待与通知303
13.2 并行307
13.2.1 使用subprocess模块307
13.2.2 使用multiprocessing模块309
13.3 重点复习312
课后练习313
第14章高级主题314
14.1 属性控制315
14.1.1 描述器315
14.1.2 定义__slots__318
14.1.3__getattribute__()、__getattr__()、__setattr__()、__delattr__()320
14.2 装饰器321
14.2.1 函数装饰器321
14.2.2 类装饰器324
14.2.3 方法装饰器327
14.3 Meta类328
14.3.1 认识type类328
14.3.2 指定metaclass330
14.3.3 __abstractmethods__332
14.4 相对导入333
14.5 重点复习335
课后练习336
附录Avenv337
附录BDjango简介339