第1章 Python概述 1
1.1 Python语言 1
1.1.1 Python的发展 1
1.1.2 Python的特点 2
1.1.3 Python的应用领域 2
1.1.4 Python的版本及安装 3
1.2 Python开发环境及工具 5
1.2.1 开发工具IDLE 5
1.2.2 开发工具PyCharm 7
1.2.3 编写简单的小程序 8
1.2.4 PyCharm配置 10
1.3 习题 11
第2章 Python语言基础 12
2.1 Python语言基础概述 12
2.1.1 Python文件类型 12
2.1.2 Python编码规范 12
2.1.3 输入与输出 14
2.2 Python数据类型 15
2.2.1 Number(数字) 15
2.2.2 String(字符串) 15
2.2.3 变量及其赋值 17
2.3 运算符和表达式 18
2.3.1 算术运算符和表达式 18
2.3.2 赋值运算符和表达式 19
2.3.3 逻辑运算符和表达式 20
2.3.4 关系运算符和表达式 21
2.3.5 字符串运算符和表达式 21
2.3.6 位运算符和表达式 24
2.3.7 运算符的优先级 24
2.3.8 Python常用的函数 25
2.4 Python数据结构 27
2.4.1 列表 28
2.4.2 元组 31
2.4.3 字典 32
2.4.4 集合 33
2.5 程序控制结构 35
2.5.1 选择结构 35
2.5.2 循环结构 37
2.6 编程实践 40
2.7 习题 43
第3章 Python函数及模块 46
3.1 案例引入及分析 46
3.2 函数 47
3.2.1 函数的定义 48
3.2.2 函数的调用 48
3.2.3 函数的参数 49
3.2.4 函数的嵌套 52
3.2.5 函数的递归调用 52
3.3 变量的作用域 53
3.4 模块 54
3.4.1 导入和创建模块 54
3.4.2 模块包 56
3.5 编程实践 56
3.6 习题 60
第4章 面向对象编程 62
4.1 面向对象基础 62
4.1.1 面向过程与面向对象 62
4.1.2 面向对象基本概念 63
4.2 类的定义和使用 64
4.2.1 类的定义 64
4.2.2 类的使用 65
4.3 类的属性和方法 66
4.3.1 类的属性 66
4.3.2 类的方法 68
4.3.3 访问控制 70
4.3.4 构造函数和析构函数 71
4.4 类的继承 72
4.4.1 类的简单继承 72
4.4.2 类的多重继承 75
4.5 类的重载 76
4.5.1 方法重载 76
4.5.2 运算符重载 77
4.6 编程实践 79
4.7 习题 84
第5章 Python GUI编程 86
5.1 PyQt GUI工具包概述 86
5.1.1 GUI简介 86
5.1.2 PyQt工具包 87
5.1.3 编程测试 89
5.2 PyQt GUI编程 93
5.2.1 信号和槽 93
5.2.2 主窗口QMain Window 96
5.2.3 对话框QDialog 97
5.2.4 PyQt输入控件 100
5.2.5 按钮 100
5.2.6 显示控件 102
5.2.7 表格控件 102
5.2.8 布局控件 104
5.3 编程实践 105
5.4 习题 108
第6章 Python数据库及文件系统 112
6.1 数据库技术基础 112
6.1.1 数据库基本概念 112
6.1.2 关系数据库 113
6.1.3 数据库应用系统的开发步骤 114
6.2 MySQL数据库 114
6.2.1 数据库安装 115
6.2.2 创建数据库 119
6.2.3 删除数据库 119
6.2.4 MySQL数据类型 120
6.2.5 创建表 122
6.2.6 编辑查看表 123
6.2.7 删除表 124
6.2.8 插入数据 124
6.2.9 修改数据 124
6.2.10 删除数据 125
6.2.11 使用SELECT查询数据 125
6.3 Python中访问MySQL语句 126
6.4 Python文件系统 128
6.4.1 文件的基础知识 128
6.4.2 文件的基本操作 129
6.4.3 文件的读写操作 130
6.4.4 文件与目录操作函数和语句 131
6.5 编程实践 133
6.6 习题 138
第7章 Python网络编程 141
7.1 网络模型介绍 141
7.1.1 OSI简介 141
7.1.2 TCP/IP简介 142
7.2 Socket编程 145
7.2.1 Socket简介 145
7.2.2 Socket编程 145
7.2.3 用Socket建立服务器端程序 146
7.2.4 用Socket建立基于UDP的服务器与客户端程序 147
7.2.5 用SocketSever建立服务器 148
7.3 urllib包与httplib包使用 149
7.3.1 urllib包 149
7.3.2 使用httplib包访问网站 151
7.4 使用ftplib访问FTP服务 152
7.4.1 ftplib包 152
7.4.2 使用ftplib包访问FTP服务器 153
7.5 电子邮件 154
7.5.1 SMTP和POP3 154
7.5.2 发送邮件 154
7.5.3 接收邮件 156
7.6 编程实践 158
7.7 习题 163
第8章 Python网站开发 165
8.1 常见的Web开发框架 165
8.1.1 Zope框架 165
8.1.2 TurboGears框架 165
8.1.3 Django框架 166
8.2 MVC模式 167
8.2.1 MVC模式介绍 167
8.2.2 MVC模式的优缺点 168
8.2.3 Django框架中的MVC 168
8.3 Django开发环境的搭建 169
8.3.1 Django框架的安装 169
8.3.2 Django简单应用 171
8.4 Django框架的应用 173
8.4.1 数据库的配置 173
8.4.2 创建数据模型 175
8.4.3 创建视图 177
8.4.4 模板系统 179
8.4.5 URL配置 182
8.4.6 发布Django项目 182
8.5 Django框架的高级应用 183
8.5.1 管理界面 183
8.5.2 编辑数据库 185
8.5.3 Session功能 186
8.5.4 国际化 187
8.6 编程实践 189
8.7 习题 195
第9章 Python数字图像处理 196
9.1 基本图像操作和处理 196
9.1.1 图像和像素 196
9.1.2 颜色空间 197
9.1.3 像素的位深 198
9.2 Python图像处理类库PIL 198
9.2.1 PIL模块基本介绍 199
9.2.2 Image模块 199
9.2.3 PIL滤镜效果 202
9.3 Python中使用OpenCV 204
9.3.1 OpenCV安装 204
9.3.2 OpenCV基本操作 205
9.3.3 处理视频序列 210
9.4 Matplotlib绘图库 211
9.4.1 Matplotlib安装 211
9.4.2 Matplotlib模块 211
9.4.3 Matplotlib绘制简单图形 211
9.5 编程实践 215
9.6 习题 218
第10章 Python科学计算 219
10.1 NumPy库 219
10.1.1 ndarray对象 219
10.1.2 ufunc运算 222
10.1.3 矩阵运算 223
10.2 SciPy数值计算库 224
10.3 编程实践 226
10.4 习题 227
参考文献 228