第1章 Python概述
1.1 Python简介
..............................................2
1.1.1 认识Python
.......................................2
1.1.2 Python的特点
....................................2
1.2 Python集成开发环境
..............................3
1.2.1 集成开发环境IDEL
............................3
1.2.2 集成开发环境PyCharm....................10
1.3 Python编程规范
....................................17
课后作业 19
第2章 Python基础
2.1 关键字与标识符
......................................21
2.1.1 关键字
.............................................21
2.1.2 标识符
.............................................21
2.2 变量
..........................................................22
2.3 数据类型
..................................................23
2.3.1 数字
................................................23
2.3.2 字符串
.............................................25
2.3.3 类型转换
.........................................26
2.4 运算符和表达式
......................................28
2.4.1 算术运算符和表达式
........................28
2.4.2 关系运算符和表达式
........................29
2.4.3 逻辑运算符和表达式
........................29
2.4.4 赋值运算符和表达式
........................30
2.4.5 位运算符和表达式
...........................30
2.4.6 成员运算符和表达式
........................33
2.4.7 标识运算符和表达式
........................33
2.4.8 运算符的优先级
...............................33
2.5 基本输入和输出
......................................34
2.5.1 基本输入
.........................................34
2.5.2 基本输出
.........................................35
17课后作业 38
第3章 字符串
3.1 认识字符串
..............................................40
3.1.1 字符串的创建
..................................40
3.1.2 字符编码
.........................................40
3.1.3 转义字符
.........................................41
3.2 字符串的处理
..........................................42
3.2.1 字符串的基本操作
...........................42
3.2.2 字符串检测
......................................45
3.2.3 字符串转换
......................................46
3.2.4 字符串分隔和合并
...........................47
3.2.5 字符串格式化
..................................48
3.3 字符串综合实例
......................................50
课后作业 52
第4章 流程控制
4.1 基本程序结构
..........................................54
4.2 分支结构
..................................................54
4.2.1 简单if语句 .......................................54
4.2.2 if-else语句
.......................................55
4.2.3 if-elif-else语句 .................................57
4.2.4 if语句的嵌套
....................................58
4.3 循环结构
..................................................60
4.3.1 while循环语句
.................................60
4.3.2 for循环语句
.....................................62
4.3.3 循环嵌套
.........................................64
4.3.4 循环控制
.........................................67
4.4 流程控制综合实例
..................................71
课后作业 73
第5章 复合数据类型
5.1 列表
..........................................................75
5.1.1 列表的创建和删除
...........................75
5.1.2 列表元素的访问和计数
....................77
5.1.3 列表元素的添加、删除和修改
..........79
5.1.4 列表的遍历
......................................81
5.1.5 列表的排序
......................................83
5.1.6 成员资格判断
..................................84
5.1.7 切片操作
.........................................84
5.2 元组
..........................................................85
5.2.1 元组的创建和删除
...........................86
5.2.2 元组的元素访问和排序
....................87
5.2.3 序列解包
.........................................88
5.2.4 生成器推导式
..................................89
5.2.5 元组与列表的区别
...........................89
5.3 字典
..........................................................90
5.3.1 字典的创建和删除
...........................90
5.3.2 字典元素的访问
...............................91
5.3.3 字典元素的添加、修改和删除
..........93
5.3.4 序列解包
.........................................94
5.3.5 字典综合实例
..................................94
5.4 集合
..........................................................96
5.4.1 集合的创建和删除
...........................96
5.4.2 集合的运算
......................................97
课后作业 98
第6章 函数与模块
6.1 函数的定义和调用
................................100
6.1.1 函数的定义
....................................100
6.1.2 函数的调用
....................................101
6.2 函数的参数传递
....................................102
6.2.1 参数传递机制
................................102
6.2.2 参数传递类型
................................104
6.3 变量的作用域
........................................108
6.3.1 局部变量
.......................................108
6.3.2 全局变量
.......................................109
6.3.3 关键字nonlocal..............................
111
6.4 函数的返回值
........................................ 112
6.5 匿名函数
................................................ 113
6.6 函数的递归调用
.................................... 114
6.7 模块的导入和使用
................................ 115
6.8 模块的分类
............................................ 117
6.9 模块的搜索路径
.................................... 119
课后作业 120
第7章 异常处理
7.1 异常概述
................................................122
7.2 异常处理
................................................124
7.2.1 简单的异常捕获
.............................124
7.2.2 捕获多种异常
................................125
7.2.3 完整的异常捕获
.............................127
7.3 异常抛出
................................................129
7.4 with语句
................................................130
7.5 自定义异常
............................................131
课后作业 132
第8章 面向对象编程
8.1 面向对象程序设计思想
.......................134
8.1.1 面向对象和面向过程的区别
...........134
8.1.2 面向对象思想的基本概念
...............135
8.2 Python中的类和对象
..........................137
8.2.1 类的定义
.......................................137
8.2.2 创建对象
.......................................138
8.2.3 self参数
.........................................138
8.2.4 初始化方法
....................................139
8.2.5 析构方法
.......................................142
8.3 类成员与实例成员
................................142
8.3.1 类属性和实例属性
.........................143
8.3.2 类方法、实例方法和静态方法
........145
8.4 私有成员和@property装饰器 ..........149
8.4.1 私有成员
.......................................149
8.4.2 @property装饰器
..........................151
8.5 继承
........................................................153
8.5.1 单一继承
.......................................154
8.5.2 多重继承
.......................................158
8.6 多态
........................................................159
课后作业 162
第9章 文件处理
9.1 文件概述
................................................164
9.1.1 文本文件和二进制文件
..................164
9.1.2 基于Windows操作系统的文件和路径 ..............................................164
9.1.3 文件操作相关的模块
......................167
9.2 文件的基本操作
....................................167
9.2.1 文件的打开
....................................168
9.2.2 文件的关闭
....................................169
9.2.3 文件的写入
....................................170
9.2.4 文件的读取
....................................171
9.3 数据序列化和反序列化
.......................173
9.3.1 使用JSON进行序列化和反序列化 ...173
9.3.2 使用pickle进行序列化和反序列化 ...175
9.4 CSV文件的操作
...................................177
9.4.1 csv.reader对象和CSV文件读取 .....178
9.4.2 csv.writer对象和CSV文件写入 .......178
9.5 os和os.path模块 ..................................179
9.5.1 常用的目录操作
.............................180
9.5.2 文件的高级操作
.............................182
9.5.3 遍历目录与删除目录
......................184
课后作业 186
第10章 正则表达式
10.1 正则表达式概述
.................................188
10.2 正则表达式的使用
.............................189
10.2.1 match函数
................................189
10.2.2 常用匹配符
...............................191
10.2.3 表示数量的限定符
.....................193
10.2.4 边界字符
...................................195
10.2.5 search函数
...............................197
10.2.6 择一匹配符“|” .......................199
10.2.7 分组
..........................................200
10.2.8 搜索和替换
...............................201
10.2.9 compile函数
..............................203
10.2.10 split函数
..................................203
10.2.11 贪婪模式和非贪婪模式
............205
10.3 正则表达式综合实例
.........................206
课后作业 209
第11章 常用第三方库
11.1 NumPy概述
........................................ 211
11.2 NumPy安装
........................................ 211
11.3 NumPy中的数组对象
.......................212
11.3.1 创建数组对象
............................212
11.3.2 数组对象的常用属性
..................219
11.3.3 数组元素的访问与修改
..............221
11.3.4 数组的四则运算
.........................227
11.3.5 数组的基本操作
.........................228
11.4 数学运算
..............................................236
11.4.1 常用数学函数
............................236
11.4.2 常用统计函数
............................238
11.4.3 线性代数运算
............................240
11.5 OpenCV-Python概述 ......................243
11.6 OpenCV-Python的安装 ..................244
11.7 常用图像处理函数
..............................245
11.7.1 图像读取、显示和保存
..............245
11.7.2 调整图像大小
............................247
11.7.3 转换颜色空间
............................248
11.7.4 图像旋转
...................................249
11.7.5 边缘检测
...................................250
11.7.6 图像轮廓的检测和绘制
..............251
11.8 OpenCV+NumPy综合实例 ............253
课后作业 259
附录 课后作业参考答案
.............................................................................................260
参考文献
..........................................................................................................................................264