目 录
基 础 篇
章 Python语言概述\t2
1.1 Python简史\t2
1.2 Python的语言特点\t3
1.3 搭建Python开发环境\t4
1.3.1 Python的下载与安装\t4
1.3.2 Python命令行的使用\t8
1.4 Python的开发工具\t8
1.4.1 IDLE\t9
1.4.2 PyCharm\t9
1.4.3 Eclipse\t10
1.5 个Python程序―Hello, World\t11
1.6 Python的编码规范\t12
1.6.1 命名规则\t12
1.6.2 代码缩进\t12
1.6.3 使用空行分隔代码\t13
1.6.4 语句的分隔\t13
小结\t14
习题\t14
第2章 Python基本概念\t15
2.1 基本数据类型\t15
2.2 变量\t17
2.2.1 变量的命名\t17
2.2.2 变量的创建\t18
2.3 运算符\t19
2.3.1 算术运算符\t19
2.3.2 关系运算符\t19
2.3.3 逻辑运算符\t20
2.3.4 位运算符\t20
2.3.5 身份运算符\t21
2.3.6 成员运算符\t21
2.4 表达式\t22
2.4.1 算术表达式\t22
2.4.2 优先级\t22
2.5 赋值语句\t23
2.5.1 赋值运算符\t23
2.5.2 增强型赋值运算符\t24
2.6 常用模块与函数\t25
2.6.1 常用内置函数\t25
2.6.2 常用模块及函数\t27
2.7 基本输入/输出\t28
2.7.1 基本输出\t29
2.7.2 基本输入\t29
小结\t31
习题\t31
第3章 Python控制结构\t33
3.1 三种基本控制结构\t33
3.2 选择结构\t33
3.2.1 单选择结构―if语句\t33
3.2.2 双选择结构―if-else语句\t35
3.2.3 多选择结构―if-elif-else语句\t36
3.2.4 选择结构的嵌套\t38
3.3 实例:使用选择结构进行程序设计\t39
3.3.1 鉴别合法日期\t39
3.3.2 判断两个圆的位置关系\t41
3.4 循环结构\t45
3.4.1 while循环\t45
3.4.2 for循环\t47
3.4.3 break语句与continue语句\t48
3.4.4 循环结构的嵌套\t49
3.5 实例:使用循环结构进行程序设计\t50
3.5.1 计算质数\t50
3.5.2 计算π的近似值\t51
小结\t53
习题\t53
第4章 函数\t54
4.1 函数的定义\t54
4.2 定义函数\t54
4.3 调用函数\t55
4.4 变量的作用域\t56
4.5 函数的参数\t57
4.5.1 形参与实参\t57
4.5.2 默认参数\t58
4.5.3 位置参数和关键字参数\t59
4.5.4 可变长度参数\t60
4.6 返回多个值\t61
4.7 实例:将功能封装为函数\t61
4.7.1 鉴别合法日期\t61
4.7.2 封装turtle模块图形函数\t63
4.8 递归\t65
4.9 实例:使用递归解决问题\t67
4.9.1 实例:计算斐波那契数\t67
4.9.2 实例:汉诺塔\t68
4.10 lambda表达式\t71
4.11 生成器\t72
小结\t73
习题\t73
第5章 Python数据结构\t75
5.1 列表\t75
5.1.1 列表的基本操作\t75
5.1.2 列表相关的函数\t78
5.1.3 在函数中使用列表\t79
5.1.4 列表查找\t81
5.1.5 列表排序\t83
5.1.6 多维列表\t86
5.2 元组\t87
5.2.1 元组的基本操作\t87
5.2.2 元组封装与序列拆封\t89
5.2.3 元组与列表的比较\t90
5.3 集合\t90
5.3.1 集合的基本操作\t90
5.3.2 子集与超集\t91
5.3.3 集合运算\t92
5.3.4 集合与列表的比较\t93
5.4 字典\t93
5.4.1 字典的基本操作\t94
5.4.2 字典相关的函数\t95
5.5 实例:使用数据结构进行程序设计\t96
5.5.1 计算质数\t96
5.5.2 词频统计\t98
小结\t99
习题\t99
进 阶 篇
第6章 使用模块\t101
6.1 模块的创建\t101
6.2 模块的导入\t102
6.3 包\t103
6.3.1 模块组织成包\t103
6.3.2 从包中导入\t104
6.3.3 包内引用\t104
6.4 第三方包的安装\t105
小结\t105
习题\t106
第7章 字符串与正则表达式\t107
7.1 字符串的基本操作\t107
7.2 字符串相关函数\t108
7.3 格式化字符串\t110
7.4 实例:使用字符串进行程序设计\t112
7.4.1 检测回文串\t112
7.4.2 字符串的简单加密\t113
7.5 字符编码\t117
7.5.1 字符编码方式\t117
7.5.2 使用Python处理中文\t118
7.6 正则表达式\t119
7.6.1 正则表达式简介\t120
7.6.2 使用re模块处理正则表达式\t122
7.7 实例:使用正则表达式进行程序设计\t124
7.7.1 用户注册信息格式校验\t124
7.7.2 模拟scanf函数\t126
小结\t127
习题\t127
第8章 面向对象编程\t129
8.1 面向对象的概念\t129
8.2 类与对象\t129
8.2.1 定义一个类\t130
8.2.2 构造类的对象\t131
8.2.3 定义私有成员\t133
8.3 运算符重载\t134
8.4 实例:进行面向对象的程序设计\t138
8.4.1 Circle类的实现\t138
8.4.2 Fraction类的实现\t142
8.5 继承\t145
小结\t148
习题\t148
第9章 异常处理\t150
9.1 异常的概念\t150
9.2 异常的抛出与捕获\t151
9.2.1 使用raise关键字抛出异常\t151
9.2.2 使用try...except捕获异常\t152
9.2.3 使用else和finally子句处理异常\t153
9.3 自定义异常\t154
9.4 使用断言\t155
小结\t155
习题\t156
0章 文件处理\t157
10.1 文件的创建与读写\t157
10.1.1 文件的创建与打开\t157
10.1.2 文件的写入\t158
10.1.3 文件的读取\t159
10.1.4 设置文件读取指针\t160
10.2 文件和目录操作\t161
10.2.1 文件操作\t161
10.2.2 目录操作\t162
10.2.3 文件和目录操作实例\t163
10.3 Python的流对象\t169
10.3.1 标准输入\t169
10.3.2 标准输出\t170
10.3.3 日志输出\t170
10.4 实例:处理文件\t171
10.4.1 获取文件属性\t171
10.4.2 实例:获取MP3文件的元数据\t173
小结\t175
习题\t175
应 用 篇
1章 使用Python进行GUI开发\t177
11.1 GUI编程\t177
11.2 Tkinter的主要组件\t178
11.2.1 标签\t178
11.2.2 框架\t179
11.2.3 按钮\t180
11.2.4 输入框\t180
11.2.5 单选按钮和复选按钮\t181
11.2.6 列表框与滚动条\t183
11.2.7 画布\t184
11.2.8 标准对话框\t186
11.3 实例:使用Tkinter进行GUI编程―三连棋游戏\t188
11.3.1 用户界面设计\t188
11.3.2 创建菜单\t189
11.3.3 创建游戏面板\t190
11.3.4 用户界面与游戏的连接\t191
小结\t197
习题\t198
2章 使用Python进行数据管理\t199
12.1 引言\t199
12.2 数据对象的持久化\t200
12.2.1 使用pickle模块存取对象\t200
12.2.2 使用shelve模块随机访问对象\t200
12.3 使用itertools模块分析和处理数据\t202
12.3.1 数据过滤函数\t202
12.3.2 groupby函数\t203
12.4 实例:教务信息数据分析与处理\t204
12.5 Python中SQLite数据库的使用\t205
12.5.1 SQLite\t206
12.5.2 连接数据库\t206
12.5.3 创建表\t207
12.5.4 插入数据记录\t207
12.5.5 查询数据记录\t208
12.5.6 更新和删除数据记录\t209
12.5.7 回滚与关闭数据库\t209
12.6 实例:封装MySQL数据库操作\t209
小结\t211
习题\t212
3章 使用Python进行Web开发\t213
13.1 Django\t213
13.2 创建项目和模型\t213
13.2.1 创建项目\t213
13.2.2 数据库设置\t214
13.2.3 启动服务器\t215
13.2.4 创建模型\t215
13.3 生成管理页面\t218
13.4 构建前端页面\t222
小结\t225
习题\t225
4章 使用Python进行多任务编程\t226
14.1 进程和线程\t226
14.1.1 进程\t226
14.1.2 线程\t226
14.1.3 串行、并发与并行\t227
14.2 Python中的多线程编程\t228
14.2.1 线程的创建与管理\t228
14.2.2 锁机制:线程间的同步问题\t231
14.2.3 Queue模块:队列同步\t234
14.3 Python中的进程编程\t237
14.3.1 进程的创建与终止\t237
14.3.2 实例:编写简易的控制台\t239
14.3.3 使用subprocess模块进行多进程管理\t239
14.3.4 进程间通信\t240
小结\t243
习题\t243
附录A:ASCII码表\t244
附录B:Python关键字\t245
附录C:Python开源项目介绍\t246
参考文献\t249