第1单元 Python起步 1
1.1 程序设计语言与Python 1
1.1.1 计算机程序设计语言 1
1.1.2 高级程序设计语言分类 3
1.1.3 Python及其特点 6
1.1.4 Python模块与脚本文件 8
练习1.1 11
1.2 Python数值对象类型 12
1.2.1 Python数据类型 12
1.2.2 Python内置数值类型 13
1.2.3 Decimal和Fraction 15
练习1.2 16
1.3 Python数据对象、变量与赋值 17
1.3.1 Python可变对象与不可变对象 17
1.3.2 Python变量与赋值操作 18
13.3 Python垃圾回收与对象生命期 21
1.3.4 Python标识符与保留字 22
练习1.3 23
1.4 数值计算——万能计算器 24
1.4.1 内置算术操作符与算术表达式 24
1.4.2 内置数学函数 27
1.4.3 math模块 29
练习1.4 31
1.5 输入与输出 32
1.5.1 回显与print()函数的基本用法 32
1.5.2 转义字符与print()函数的格式控制 33
1.5.3 input()函数 37
练习1.5 37
第2单元 Python程序结构 38
2.1 命题与判断 39
2.1.1 布尔类型 39
2.1.2 比较表达式 39
2.1.3 逻辑表达式 40
2.1.4 身份判定操作 43
练习2.1 43
2.2 选择结构 45
2.2.1 if-else型选择结构 45
2.2.2 if-else嵌套与if-elif选择结构 47
练习2.2 49
2.3 循环结构 50
2.3.1 while语句 51
2.3.2 for语句 52
2.3.3 循环嵌套 54
2.3.4 循环中断与短路控制 56
2.3.5 穷举 59
2.3.6 迭代 61
2.3.7 确定性模拟 66
2.3.8 随机模拟与random模块 68
练习2.3 71
2.4 函数 73
2.4.1 函数调用、定义与返回 73
2.4.2 基于函数的变量作用域 77
2.4.3 函数参数技术 79
2.4.4 函数标注 83
2.4.5 递归 84
2.4.6 lambda表达式 88
练习2.4 89
2.5 程序异常处理 92
2.5.1 异常处理的基本思路与异常类型 93
2.5.2 try-except语句 94
2.5.3 控制异常捕获范围 96
2.5.4 else子句与finally子句 96
2.5.5 异常的人工显式触发:raise与assert 97
练习2.5 98
第3单元 容器 100
3.1 序列容器 100
3.1.1 序列对象的构建 100
3.1.2 序列通用操作 102
3.1.3 列表的个性化操作 108
3.1.4 字符串的个性化操作 111
3.1.5 字符串编码与解码 114
3.1.6 字符串格式化与format()方法 116
3.1.7 正则表达式 119
练习3.1 125
3.2 无序容器 129
3.2.1 字典 129
3.2.2 集合 132
练习3.2 135
3.3 迭代器、生成器与推导表达式 138
3.3.1 迭代器 138
3.3.2 生成器 139
3.3.3 推导表达式 144
练习3.3 147
第4单元 面向类的程序设计 150
4.1 类及其组成 150
4.1.1 类模型及其语法 150
4.1.2 类对象、实例对象与__init__()方法 152
4.1.3 最小特权原则与对象成员访问限制 155
4.1.4 实例方法、静态方法与类方法 158
练习4.1 159
4.2 Python内置的类属性、方法与函数 161
4.2.1 内置的类属性 161
4.2.2 获取类与对象特征的内置函数 162
4.2.3 操作符重载 166
4.2.4 可定制的内置方法 168
练习4.2 176
4.3 类的继承 178
4.3.1 类的继承及其关系测试 178
4.3.2 新式类与object 180
4.3.3 子类访问父类成员的规则 182
4.3.4 子类实例的初始化与super 182
练习4.3 187
第5单元 Python数据处理 190
5.1 Python文件操作 190
5.1.1 文件对象及其操作过程 190
5.1.2 文件打开函数open() 192
5.1.3 文件属性与方法 195
5.1.4 文件可靠关闭与上下文处理器 196
5.1.5 二进制文件的序列化读写 197
5.1.6 文件指针位置获取与移动 200
练习5.1 200
5.2 Python数据库操作 203
5.2.1 数据库与SQL 203
5.2.2 用pyodbc访问数据库 207
5.2.3 SQLite3数据库 213
练习5.2 215
5.3 文件与目录管理 216
5.3.1 文件和目录管理(os模块和os.path模块) 217
5.3.2 文件压缩(zipfile模块) 219
5.3.3 文件复制(shutil模块) 221
练习5.3 221
第6单元 Python网络编程 222
6.1 Python Socket编程 222
6.1.1 TCP/IP与Socket 222
6.1.2 socket模块与socket对象 226
6.1.3 TCP的Python Socket编程 228
6.1.4 UDP的Python Socket编程 231
练习6.1 232
6.2 Python WWW应用开发 235
6.2.1 WWW及其关键技术 235
6.2.2 urllib模块库 241
6.2.3 urllib.parse模块与URL解析 242
6.2.4 urllib.request模块与网页抓取 244
6.2.5 网页提交表单 247
6.2.6 urllib.error模块与异常处理 248
6.2.7 webbrowser模块 249
练习6.2 250
第7单元 Python GUI开发 252
7.1 GUI三要素:组件、布局与事件处理 252
7.1.1 组件与tkinter 252
7.1.2 布局与布局管理器 256
7.1.3 事件绑定与事件处理 259
练习7.1 263
7.2 GUI程序结构 265
7.2.1 基于tkinter的GUI开发环节 265
7.2.2 面向对象的GUI程序框架 268
练习7.2 270
7.3 GUI制作示例 270
7.3.1 Label与Button 270
7.3.2 Entry与Message 276
7.3.3 Text与滚动条 280
7.3.4 选择框 287
7.3.5 菜单 293
练习7.3 296
附录A Python运算符 297
附录B Python内置函数 301
附录C Python标准模块库目录 307
附录D Python 3.0标准异常类结构(PEP348) 316
参考文献 318