第1章 Python概述 1
1.1 计算机与计算机语言 2
1.1.1 计算机的诞生与发展 2
1.1.2 计算机语言概述 6
1.1.3 翻译执行 8
1.2 Python语言概述 9
1.2.1 Python语言发展史 9
1.2.2 Python语言的特点 11
1.2.3 Python的应用领域 12
1.2.4 Python版本的区别 12
1.3 Python环境配置 14
1.3.1 安装Python解释器 14
1.3.2 Python程序的运行方式 17
1.3.3 运行Python程序 18
1.4 集成开发环境 21
1.4.1 PyCharm的下载和安装 21
1.4.2 PyCharm的使用 24
1.5 程序的开发与编写 27
1.5.1 程序开发流程 27
1.5.2 程序编写的基本方法 28
1.6 本章小结 29
1.7 习题 30
第2章 Python实例设计与分析 32
2.1 实例1:货币兑换 33
2.2 代码风格 35
2.2.1 缩进 35
2.2.2 注释 35
2.3 变量 36
2.3.1 标识符和关键字 36
2.3.2 数据类型 37
2.3.3 变量赋值 37
2.3.4 字符串索引和切片 38
2.4 基本输入/输出 39
2.4.1 input()函数 39
2.4.2 eval()函数 39
2.4.3 print()函数 40
2.5 结构控制 41
2.5.1 顺序结构 41
2.5.2 分支结构 42
2.5.3 循环结构 43
2.6 函数式编程 43
2.7 实例2:Turtle Star 44
2.8 模块化编程 45
2.8.1 模块的导入和使用 45
2.8.2 模块的分类 46
2.9 绘图模块——turtle 49
2.10 本章小结 54
2.11 习题 54
第3章 数字类型和字符串 56
3.1 数字类型 57
3.1.1 整型 57
3.1.2 浮点型 58
3.1.3 复数类型 59
3.1.4 布尔类型 60
3.2 数字类型的运算 60
3.2.1 数值运算符 60
3.2.2 运算符优先级 64
3.2.3 数字类型转换 65
3.3 实例3:模拟商家收银抹零行为 65
3.4 数学模块——math 66
3.5 实例4:三天打鱼两天晒网 70
3.6 字符串 70
3.6.1 字符串的定义方式 71
3.6.2 字符串格式化 72
3.6.3 字符串操作符 75
3.6.4 字符串处理函数 76
3.6.5 字符串处理方法 76
3.7 实例5:过滤敏感词 80
3.8 本章小结 81
3.9 习题 81
第4章 流程控制 82
4.1 程序表示方法 83
4.1.1 程序流程图 83
4.1.2 程序的基本结构 84
4.1.3 使用程序流程图描述程序 86
4.2 分支结构 87
4.2.1 判断条件 88
4.2.2 单分支结构:if语句 89
4.2.3 二分支结构:if-else语句 89
4.2.4 多分支结构:if-elif-else语句 90
4.2.5 分支嵌套 93
4.3 循环结构 95
4.3.1 条件循环:while循环 95
4.3.2 遍历循环:for循环 96
4.3.3 循环控制 97
4.4 异常处理 99
4.5 实例6:猜数字 100
4.6 本章小结 102
4.7 习题 102
第5章 函数 104
5.1 函数概述 105
5.2 函数的基础知识 106
5.2.1 函数的定义 106
5.2.2 函数的调用 107
5.3 函数的参数传递 108
5.3.1 参数的位置传递 108
5.3.2 参数的关键字传递 109
5.3.3 参数的默认值传递 109
5.3.4 包裹传递 110
5.3.5 解包裹传递 110
5.3.6 混合传递 111
5.4 函数的返回值 112
5.5 变量作用域 112
5.5.1 局部变量 113
5.5.2 全局变量 113
5.6 函数的特殊形式 114
5.6.1 匿名函数 115
5.6.2 递归函数 115
5.7 时间处理模块——datetime 117
5.8 实例7:模拟钟表 121
5.9 代码抽象与模块化设计 125
5.10 本章小结 126
5.11 习题 127
第6章 组合数据类型 128
6.1 组合数据类型概述 129
6.1.1 序列类型 129
6.1.2 集合类型 130
6.1.3 映射类型 131
6.2 序列类型 131
6.2.1 切片 131
6.2.2 列表 133
6.2.3 元组 135
6.3 实例8:生成验证码 136
6.4 集合类型 137
6.4.1 集合的常见操作 137
6.4.2 集合关系测试 138
6.5 字典 140
6.5.1 字典类型介绍 140
6.5.2 字典的常见操作 140
6.6 中文分词模块——jieba 141
6.7 实例9:《西游记》人物出场统计 143
6.8 本章小结 145
6.9 习题 145
第7章 程序设计之数字推盘 146
7.1 数字推盘游戏简介 147
7.2 游戏模块——pygame 149
7.2.1 pygame的初始化和退出 149
7.2.2 创建游戏窗口 150
7.2.3 游戏循环与游戏时钟 152
7.2.4 图形和文本绘制 153
7.2.5 元素位置控制 158
7.2.6 动态效果 161
7.2.7 事件与事件处理 164
7.3 游戏框架 167
7.4 自顶向下的设计 167
7.4.1 顶层设计 168
7.4.2 子层设计 169
7.4.3 第三层设计 174
7.4.4 模块整合 178
7.5 自底向上的实现 179
7.6 运行数字推盘 180
7.7 本章小结 182
7.8 习题 182
第8章 文件和数据格式化 183
8.1 文件概述 184
8.2 文件的基本操作 186
8.2.1 文件的打开和关闭 186
8.2.2 读文件 188
8.2.3 写文件 189
8.2.4 文件读写位置 191
8.2.5 管理文件与目录 193
8.3 文件迭代 194
8.4 实例10:用户登录 195
8.5 数据维度与数据格式化 201
8.5.1 基于维度的数据分类 201
8.5.2 一二维数据的存储与读写 202
8.5.3 多维数据的格式化 205
8.6 Python中的json模块 206
8.7 本章小结 207
8.8 习题 207
第9章 数据分析与可视化 209
9.1 数据分析概述 210
9.1.1 数据分析的流程 210
9.1.2 数据分析常用工具 211
9.2 科学计算 212
9.2.1 numpy之数组对象ndarray 212
9.2.2 numpy的基本操作 214
9.3 数据可视化 216
9.31 数据可视化概述 216
9.3.2 pyplot之绘图区域 217
9.3.3 pyplot之图表与风格控制 219
9.4 实例11:各学科成绩评估分析 223
9.5 数据分析 226
9.5.1 pandas数据结构 226
9.5.2 pandas的基本使用 228
9.6 本章小结 233
9.7 习题 233
第10章 网络爬虫 235
10.1 网络爬虫概述 236
10.2 爬虫爬取网页的流程 236
10.3 抓取网页数据 237
10.3.1 浏览网页过程 237
10.3.2 使用requests模块抓取网页 239
10.4 解析网页数据 240
10.4.1 网页数据结构分析 240
10.4.2 解析网页的过程和技术 241
10.4.3 使用Beautiful Soup 4解析网页数据 242
10.5 实例12:龙港房地产爬虫 244
10.6 本章小结 248
10.7 习题 249