Python基础与大数据应用
作者:丁辉主编
出版时间: 2020年版
内容简介
本书内容安排遵循学生的认知规律,结合Python的特点,将教学内容分为Python基础及数据分析两大部分。全书分为11章,前6章讲解了Python基本语法和基本应用,后5章系统地讲解了用Python爬取数据、处理数据、分析数据的方法与过程。每章除了丰富的实例外,还设计了来源于实践的项目训练及拓展训练项目,引导读者学以致用。本书可以作为高校计算机类专业和相关专业的教材,也可作为Python爱好者的自学用书。
目录
第 1章
Python环境搭建 1
1.1 Python版本概述及下载Python安装文件 1
1.1.1 Python版本概述 1
1.1.2 下载Python安装文件 2
1.2 安装Python 5
1.2.1 解压下载的文件 5
1.2.2 运行Python安装文件 5
1.3 Python交互模式 6
1.4 iPython 3和PyCharm概述 7
1.4.1 iPython 3概述 7
1.4.2 PyCharm概述 9
1.5 项目训练:Python的安装与使用 13
1.6 本章小结 15
1.7 练习 15
1.8 拓展训练项目 16
第 2章
Python编程基础 17
2.1 变量 17
2.2 数值 19
2.2.1 整型 19
2.2.2 浮点型 19
2.2.3 复数型 20
2.2.4 布尔型 20
2.3 字符串 21
2.3.1 转义字符 21
2.3.2 字符串运算 21
2.3.3 字符串操作方法 22
2.4 列表 23
2.4.1 列表的创建与删除 23
2.4.2 列表操作方法 24
2.4.3 列表切片操作 25
2.5 元组 27
2.6 字典 28
2.6.1 字典的创建与访问 28
2.6.2 字典元素的修改 28
2.6.3 字典操作方法 29
2.7 运算符 30
2.7.1 算术运算符 30
2.7.2 位运算符 31
2.7.3 逻辑运算符 31
2.7.4 比较运算符 32
2.7.5 赋值运算符 32
2.7.6 其他运算符 33
2.8 Python代码编写规范 34
2.9 控制流 35
2.9.1 顺序结构程序 35
2.9.2 分支结构程序 40
2.9.3 循环结构程序 45
2.10 项目训练:个人所得税计算 53
2.11 本章小结 56
2.12 练习 56
2.13 拓展训练项目 58
2.13.1 Python数值型变量的定义与赋值 58
2.13.2 Python控制流和运算符 59
2.13.3 列表的基本操作 59
2.13.4 元组的基本操作 59
2.13.5 字典的基本操作 59
2.13.6 字符串的基本操作 60
第3章
函数 61
3.1 自定义函数 61
3.1.1 函数定义格式 61
3.1.2 函数的设计 62
3.1.3 lambda表达式 62
3.2 函数调用 63
3.3 函数参数 64
3.3.1 位置参数 64
3.3.2 默认参数 64
3.3.3 关键参数 65
3.3.4 可变长度参数 66
3.4 变量作用域 68
3.4.1 局部变量 68
3.4.2 全局变量 69
3.5 异常 70
3.5.1 Python标准异常类 70
3.5.2 异常处理 71
3.6 项目训练:哥德巴赫狂想——任何大于2的偶数总可以分解成两个素数的和 75
3.7 本章小结 76
3.8 练习 77
3.9 拓展训练项目 78
3.9.1 用函数实现乘法口诀 78
3.9.2 Python函数参数 78
3.9.3 Python局部变量和全局变量 78
3.9.4 Python异常捕获与处理 78
第4章
面向对象编程基础 79
4.1 类和对象 79
4.1.1 类 79
4.1.2 对象 80
4.2 属性与方法 80
4.2.1 属性 80
4.2.2 方法 83
4.3 继承 84
4.4 多态 86
4.5 项目训练:简单学生成绩管理系统 88
4.6 本章小结 91
4.7 练习 92
4.8 拓展训练项目 93
4.8.1 Python类与对象 93
4.8.2 类方法、实例方法和静态方法 93
4.8.3 类继承、组合 94
4.8.4 类的多重继承 94
第5章
模块 95
5.1 模块的创建和命名空间 95
5.1.1 模块的创建 95
5.1.2 命名空间 96
5.2 模块的导入和路径 97
5.2.1 模块的导入 97
5.2.2 模块的路径 98
5.3 包 100
5.4 Python内置模块 100
5.4.1 math模块 100
5.4.2 random模块 101
5.4.3 time模块 101
5.4.4 datetime模块 103
5.4.5 calendar模块 104
5.4.6 sys模块 105
5.4.7 zipfile模块 106
5.5 项目训练:日历 108
5.6 本章小结 110
5.7 练习 111
5.8 拓展训练项目 111
5.8.1 Python模块导入 111
5.8.2 zipfile模块的使用 112
5.8.3 Python模块的属性 112
5.8.4 Python模块内置函数 112
第6章
Python文件和数据库 113
6.1 文件的基本操作 113
6.1.1 内置函数open() 113
6.1.2 文件对象常用的属性和方法 114
6.1.3 文件操作案例 116
6.2 文件系统的基本操作 119
6.3 MySQL数据库 121
6.3.1 MySQL简介 121
6.3.2 安装MySQL 122
6.3.3 使用Python连接MySQL数据库 126
6.3.4 MySQL的基本操作 127
6.4 项目训练:使用Python完成课程表和学生信息表的创建 128
6.5 本章小结 131
6.6 练习 132
6.7 拓展训练项目 133
6.7.1 安装MySQL数据库和Python连接数据库 133
6.7.2 使用Python实现MySQL增查改删 133
6.7.3 Python文件的基本操作 133
6.7.4 Python文件目录的基本操作 134
第7章
Python爬虫基础 135
7.1 网络爬虫概述及其结构 135
7.1.1 网络爬虫概述 135
7.1.2 网络爬虫结构 136
7.2 urllib库 137
7.2.1 urllib.request模块 137
7.2.2 urllib.parse模块 138
7.2.3 urllib.error模块 140
7.3 使用urllib爬取网页 141
7.4 浏览器的模拟与实战 142
7.5 正则表达式 143
7.6 图片爬虫实战 147
7.7 项目训练:用urllib库爬取百度贴吧 148
7.8 本章小结 152
7.9 练习 152
7.10 拓展训练项目 153
7.10.1 urllib库的使用 153
7.10.2 百度贴吧网页爬虫 153
7.10.3 淘宝网站图片爬虫 153
第8章
Python爬虫框架 154
8.1 常见爬虫框架 154
8.2 Scrapy爬虫框架的安装 155
8.3 Scrapy爬虫框架简介 156
8.4 Scrapy常用工具命令 157
8.4.1 创建一个Scrapy项目 157
8.4.2 Scrapy全局命令 158
8.4.3 Scrapy项目命令 160
8.5 Scrapy爬虫实战 161
8.6 项目训练:用Scrapy爬取豆瓣图书 167
8.7 本章小结 171
8.8 练习 171
8.9 拓展训练项目 171
8.9.1 Scrapy框架的安装及使用 171
8.9.2 Scrapy命令行工具 172
第9章
数据分析基础 173
9.1 numpy模块 173
9.1.1 ndarray类型数组 174
9.1.2 matrix类型矩阵 182
9.1.3 matrix类型和array类型的区别 189
9.2 pandas模块 193
9.2.1 pandas模块基础 193
9.2.2 pandas模块数据清洗 199
9.2.3 pandas模块数据预处理 221
9.2.4 pandas模块数据提取 230
9.2.5 pandas模块数据筛选 234
9.2.6 pandas模块数据汇总 235
9.2.7 pandas模块数据统计 237
9.2.8 pandas模块综合应用示例 239
9.3 项目训练:清洗和预处理8.6节中爬取的doubanread. csv文件 245
9.4 本章小结 247
9.5 练习 247
9.6 拓展训练项目 249
9.6.1 pandas基本功能实验 249
9.6.2 pandas汇总和计算实验 249
9.6.3 pandas缺失数据处理 249
9.6.4 pandas构建层次化索引 249
第 10章
pandas数据分析 251
10.1 pandas文件读写基础 251
10.1.1 CSV文件的读写 251
10.1.2 Excel文件的读写 254
10.2 pandas与MySQL数据库的交互 256
10.2.1 pandas与MySQL连接的步骤 256
10.2.2 pandas与MySQL交互 257
10.3 pandas字符串处理 259
10.4 pandas数据分组与聚合 265
10.4.1 使用内置的聚合函数进行聚合运算 265
10.4.2 分组与聚合过程 267
10.4.3 agg()和apply()聚合函数 268
10.5 项目训练:电影数据统计 271
10.6 本章小结 274
10.7 练习 274
10.8 拓展训练项目 274
10.8.1 pandas文件读写 274
10.8.2 pandas数据库读写 275
10.8.3 pandas数据处理 275
10.8.4 pandas数据聚合和组迭代 275
第 11章
Python可视化与可视化工具 276
11.1 Python可视化与可视化工具介绍 276
11.2 pandas基本图形绘制 278
11.2.1 折线图 278
11.2.2 柱状图 282
11.2.3 直方图 285
11.2.4 散点图 285
11.2.5 面积图 287
11.2.6 饼图 287
11.2.7 密度图 290
11.3 matplotlib绘图 291
11.3.1 matplotlib绘图基础 291
11.3.2 matplotlib交互绘图 291
11.4 matplotlib.pyplot的使用 294
11.4.1 pyplot绘图基础 294
11.4.2 多种类型图的绘制 297
11.5 项目训练:电影数据信息分析 306
11.6 本章小结 310
11.7 练习 310
11.8 拓展训练项目 310
11.8.1 pandas绘图 310
11.8.2 matplotlib交互式绘图实践 310
11.8.3 pyplot绘图元素的设置 311
11.8.4 子图的绘制 311
附录 312
参考文献 316