Python语言 本书特色
本书以“任务驱动,实战为王”为出发点,详细介绍了Python语言的基础知识,同时,书中详细剖析了3个典型的切近生活的实战案例,以培养读者解决问题的能力。项目实战案例包括Python爬虫项目实战、Python数据可视化项目实战和Python数据分析项目实战。另外,本书以“理论和实践两手抓,两手都要硬”为根本,在每章的理论学习之后,都有与之匹配的上机实验和课堂练习。将理论和实践融为一体,让读者真正地将理论和实战合二为一,做到学以致用。
Python语言 内容简介
本书以WIN10 和Python3.6.5 搭建Python开发基础平台为起点,重点阐述Python语言的基础知识和3个典型的项目实战案例。全书以理论引导、案例驱动、上机实战为理念打造Python语言学习的新模式。具体内容分为两大部分:**部分以Python编程语言基础知识普及为主,分别介绍了Python3概述、基本语法、流程控制、组合数据类型、字符串与正则式、函数、模块、类和对象、异常、文件操作;第二部分以项目实战为核心,以学以致用为导向,以切近生活的案例为依托,分别介绍Python爬虫项目实战、Python数据可视化项目实战、Python数据分析项目实战。 本书以作者十多年的计算机专业课程教学经验及相应的项目实战心得为依托,力争做以到理论知识为基础、以案例实战为手段、以解决问题为根本的初衷。让读者*大限度地从书中汲取他们所需要的编程知识和实战体验。 本书可作为高等学校尤其是高职院校各专业的Python语言启蒙教材,同时也可作为广大Python语言爱好者自学的参考书。
Python语言 目录
第1章 Python 3概述
1.1 Python简介 2
1.1.1 Python的前世今生 2
1.1.2 Python的应用场合 2
1.1.3 Python的特性 3
1.1.4 选择Python的版本 4
1.1.5 如何学习Python 5
1.2 Python环境构建 5
1.2.1 在Windows系统中安装Python 3 5
1.2.2 在Linux系统中安装Python 3 8
1.2.3 在Mac OS系统中安装Python 3 9
1.3 **个程序 Hello World! 10
1.3.1 程序简析 11
1.3.2 print()函数 11
1.3.3 input()函数 12
1.3.4 注释 12
1.3.5 IDLE使用简介 13
1.4 实验 17
1.4.1 PyCharm的安装 18
1.4.2 实例:节日贺卡 23
1.4.3 程序剖析 24
1.5 小结 25
习题 25
参考文献 26
第2章 基 本 语 法
2.1 PEP8风格指南 27
2.1.1 变量 27
2.1.2 函数和方法 28
2.1.3 属性和类 29
2.1.4 模块和包 29
2.1.5 规定 29
2.2 变量与数据类型 29
2.2.1 变量 30
2.2.2 变量命名规则 30
2.2.3 数据类型 30
2.2.4 type() 函数 32
2.2.5 数据类型的转换 32
2.3 表达式 34
2.3.1 算术运算符 34
2.3.2 比较运算符 34
2.3.3 逻辑运算符 34
2.3.4 复合赋值运算符 35
2.3.5 运算符优先级 35
2.4 实验 36
2.4.1 用常量和变量 36
2.4.2 用运算符和表达式 37
2.4.3 type()函数的使用 37
2.4.4 help()函数的使用 38
2.5 小结 39
习题 39
参考文献 39
第3章 流 程 控 制
3.1 条件语句 41
3.2 条件流程控制 42
3.2.1 单向条件(if...) 43
3.2.2 双向条件语句(if...else) 43
3.2.3 多向条件语句(if...elif...else) 44
3.2.4 条件嵌套 45
3.3 循环流程控制 45
3.3.1 for 循环 46
3.3.2 for循环嵌套 47
3.3.3 break及continue语句 48
3.3.4 for...if...else循环 48
3.3.5 while循环 49
3.4 实验 50
3.4.1 使用条件语句 50
3.4.2 使用for语句 51
3.4.3 使用while语句 52
3.4.4 使用break语句 52
3.4.5 使用continue语句 53
3.5 小结 54
习题 54
参考文献 55
第4章 组合数据类型
4.1 列表 56
4.1.1 创建列表 56
4.1.2 使用列表 57
4.1.3 删除列表元素 58
4.1.4 列表的内置函数与其他方法 59
4.2 元组 60
4.2.1 创建元组 60
4.2.2 使用元组 61
4.2.3 删除元组 62
4.2.4 元组的内置函数 62
4.3 字典 63
4.3.1 创建字典 63
4.3.2 使用字典 63
4.3.3 删除元素和字典 64
4.3.4 字典的内置函数和方法 65
4.4 集合 66
4.4.1 创建集合 66
4.4.2 使用集合 67
4.4.3 删除元素和集合 68
4.4.4 集合的方法 69
4.5 实验 70
4.5.1 元组的使用 70
4.5.2 集合的使用 70
4.6 小结 71
习题 71
参考文献 72
第5章 字符串与正则表达式
5.1 字符串基础 73
5.1.1 字符串的基本操作 74
5.1.2 字符串格式化 77
5.1.3 字符串格式化符号 77
5.1.4 字符串格式化元组 78
5.2 字符串方法 78
5.3 正则表达式 83
5.3.1 认识正则表达式 83
5.3.2 re模块 85
5.3.3 re.match()方法 85
5.3.4 re.search()方法 85
5.3.5 re.match()与re.search()的区别 86
5.4 实验 86
5.4.1 使用字符串处理函数 86
5.4.2 正则表达式的使用 87
5.4.3 使用re模块 87
5.5 小结 88
习题 88
参考文献 89
第6章 函 数
6.1 函数的概述 90
6.1.1 函数的定义 90
6.1.2 全局变量 91
6.1.3 局部变量 93
6.2 函数的参数和返回值 93
6.2.1 参数传递的方式 94
6.2.2 位置参数和关键字参数 95
6.2.3 默认值参数 96
6.2.4 可变参数 96
6.2.5 函数的返回值 98
6.3 函数的调用 99
6.3.1 函数的调用方法 99
6.3.2 嵌套调用 99
6.3.3 使用闭包 100
6.3.4 递归调用 101
6.4 实验 102
6.4.1 声明和调用函数 102
6.4.2 在调试窗口中查看变量的值 102
6.4.3 使用函数参数和返回值 105
6.4.4 使用闭包和递归函数 107
6.4.5 使用Python的内置函数 108
6.5 小结 108
习题 109
参考文献 109
第7章 模 块
7.1 模块的概述 110
7.1.1 模块与程序 110
7.1.2 命名空间 111
7.1.3 模块导入方法 112
7.1.4 自定义模块和包 113
7.2 安装第三方模块 115
7.3 模块应用实例 118
7.3.1 日期时间相关:datetime模块 118
7.3.2 读写JSON数据:json模块 122
7.3.3 系统相关:sys模块 124
7.3.4 数学:math模块 125
7.3.5 随机数:random模块 127
7.4 在Python中调用R语言 129
7.4.1 安装rpy2模块 129
7.4.2 安装R语言工具 129
7.4.3 测试安装 131
7.4.4 调用R示例 132
7.5 实验 133
7.5.1 使用datetime模块 133
7.5.2 使用sys模块 134
7.5.3 使用与数学有关的模块 135
7.5.4 自定义和使用模块 135
7.6 小结 136
习题 136
参考文献 137
第8章 类 和 对 象
8.1 理解面向对象 138
8.1.1 面向对象编程的概念 138
8.1.2 面向对象术语简介 138
8.2 类的定义与使用 139
8.2.1 类的定义 139
8.2.2 类的使用 140
8.2.3 类的构造方法及专有方法 140
8.2.4 类的访问权限 141
8.2.5 获取对象信息 143
8.3 类的特点 144
8.3.1 封装 144
8.3.2 多态 144
8.3.3 继承 145
8.3.4 多重继承 149
8.4 实验 150
8.4.1 声明类 150
8.4.2 类的继承和多态 151
8.4.3 复制对象 152
8.5 小结 153
习题 154
参考文献 154
第9章 异 常
9.1 异常概述 155
9.1.1 认识异常 155
9.1.2 处理异常 155
9.1.3 抛出异常 160
9.2 异常处理流程 161
9.3 自定义异常 161
9.4 实验 162
9.4.1 利用try-except处理除数为零的异常 162
9.4.2 自定义异常的使用 163
9.4.3 raise关键字的使用 164
9.4.4 内置异常处理语句的使用 164
9.5 小结 165
习题 165
参考文献 165
第10章 文 件 操 作
10.1 打开文件 166
10.1.1 文件模式 167
10.1.2 文件缓冲区 168
10.2 基本的文件方法 168
10.2.1 读和写 168
10.2.2 读取行 169
10.2.3 关闭文件 170
10.2.4 文件重命名 170
10.2.5 删除文件 171
10.3 String I/O函数 171
10.3.1 输出到屏幕 171
10.3.2 读取键盘输入 171
10.4 基本的目录方法 172
10.4.1 创建目录 172
10.4.2 显示当前工作目录 172
10.4.3 改变目录 173
10.4.4 删除目录 173
10.5 实验 173
10.5.1 文件操作 173
10.5.2 目录操作 174
10.5.3 I/O函数的使用 175
10.6 小结 176
习题 176
参考文献 176
第11章 项目实战:爬虫程序
11.1 爬虫概述 178
11.1.1 准备工作 179
11.1.2 爬虫类型 179
11.1.3 爬虫原理 180
11.2 爬虫三大库 181
11.2.1 Requests库 181
11.2.2 BeautifulSoup库 187
11.2.3 Lxml库 193
11.3 案例剖析:酷狗TOP500数据爬取 198
11.3.1 思路简析 198
11.3.2 代码实现 199
11.3.3 代码分析 199
11.4 Scrapy框架 201
11.4.1 Scrapy爬虫框架 201
11.4.2 Scrapy的安装 202
11.4.3 Scrapy的使用 204
11.5 实验 209
参考文献 210
第12章 项目实战:数据可视化
12.1 Matplotlib简介 212
12.1.1 Pyplot模块介绍 212
12.1.2 plot()函数 215
12.1.3 绘制子图 216
12.1.4 添加标注 218
12.1.5 Pylab模块应用 219
12.2 Artist模块介绍 220
12.2.1 Artist模块概述 220
12.2.2 Artist的属性 221
12.3 Pandas绘图 222
12.4 案例剖析:词云图 225
12.4.1 思路简析 226
12.4.2 代码实现 227
12.4.3 代码分析 228
12.5 实验 229
参考文献 230
第13章 项目实战:数据分析
13.1 数据清洗 231
13.1.1 编码问题 231
13.1.2 缺失值分析 232
13.1.3 去除异常值 233
13.1.4 去除重复值与冗余信息 233
13.2 数据存取 234
13.2.1 CSV文件存取 234
13.2.2 JSON文件的存取 236
13.2.3 XLSX文件的存取 237
13.2.4 MySQL数据库文件的存取 239
13.3 NumPy 245
13.3.1 NumPy简介 245
13.3.2 NumPy基础 246
13.4 案例剖析:房天下西安二手房数据分析 251
13.4.1 思路简析 251
13.4.2 代码实现 252
13.4.3 代码分析 252
13.5 实验 258
参考文献 259
附录A Python代码风格指南:PEP8 260
附录B IPython 指南 263
附录C Pycharm 指南 267
Python语言 作者简介
李肖俊,CCF专业会员,西安建筑科技大学博士,参与国家自然基金3项,陕西省自然基金1项。