目录
第一部分基础篇
第1章概述3
1.1Python语言简介3
1.1.1Python语言的特点与优势3
1.1.2Python的应用领域4
1.2Python的安装与环境搭建5
1.2.1Python解释器的安装5
1.2.2搭建Python开发环境7
1.3Python语法规范8
1.3.1Python语言字符集8
1.3.2Python语言词法规则9
1.3.3代码编写格式10
1.4Python IDLE开发环境的使用11
1.4.1Python IDLE交互式窗口的使用11
1.4.2Python IDLE编辑窗口的使用12
1.5综合应用案例15
案例1: 键盘输入和显示器输出字符串15
习题一17
第2章数据类型与数据对象基础19
2.1数据类型概述19
2.1.1数据类型的相关概念19
2.1.2变量与对象引用20
2.2数值类型与对象21
2.2.1创建数值对象21
2.2.2数值对象的运算与运算规则232.2.3数值对象的内置方法26
2.3字符串类型与对象26
2.3.1创建字符串26
2.3.2字符串的索引与切片28
2.3.3字符串的运算28
2.3.4字符串的格式化29
2.3.5字符串的内置方法30
2.4列表类型与对象32
2.4.1创建列表32
2.4.2列表的索引与切片33
2.4.3列表的运算33
2.4.4列表的内置方法34
2.5元组类型与对象37
2.5.1创建元组37
2.5.2元组的运算38
2.5.3元组的索引与切片38
2.5.4元组的内置方法38
2.6字典类型与对象39
2.6.1创建字典39
2.6.2字典的基本操作40
2.6.3字典的内置方法41
2.7集合类型与对象43
2.7.1创建集合44
2.7.2集合运算44
2.7.3集合对象的内置方法45
2.8综合应用案例47
案例2: 数制转换47
习题二48
第3章基本语句50
3.1算法描述与流程图50
3.1.1算法的基本概念50
3.1.2算法的描述方法51
3.2if条件语句的使用52
3.2.1if条件语句的基本语法52
3.2.2if表达式54
3.2.3if条件语句的嵌套使用54
3.3match条件语句55
3.3.1match条件语句的基本语法55
3.3.2match条件语句的高级特性56
3.4while循环语句58
3.4.1while循环语句的基本语法58
3.4.2使用break和continue转向语句58
3.4.3使用else子句59
3.5for循环语句59
3.5.1for循环语句的基本语法59
3.5.2循环语句的嵌套使用60
3.5.3利用推导式创建数据对象61
3.5.4while语句与for语句的比较与应用选择62
3.6异常处理语句63
3.6.1异常处理的基本概念63
3.6.2使用tryexcept语句处理异常64
3.6.3使用tryexceptfinally语句处理异常64
3.6.4使用assert或raise语句抛出异常65
3.7综合应用案例66
案例3: 完数判断66
案例4: 质数搜索67
习题三68
第4章函数应用71
4.1函数概述71
4.1.1函数的分类71
4.1.2函数的主要作用72
4.2自定义函数72
4.2.1函数的定义72
4.2.2函数的调用74
4.2.3函数参数的类型与参数传递74
4.3函数的特殊形式78
4.3.1匿名函数78
4.3.2函数嵌套79
4.3.3函数递归80
4.4变量作用域81
4.4.1作用域类型81
4.4.2使用global和nonlocal关键字声明变量81
4.5Python内置函数83
4.5.1数学函数83
4.5.2可迭代对象处理函数87
4.6综合应用案例90
案例5: 求解汉诺塔问题90
案例6: 编写函数计算多个正整数的最大公约数91
案例7: 闰年和季节的判断92
习题四93
第5章面向对象程序设计95
5.1面向对象程序设计方法概述95
5.1.1面向对象程序设计及其特点95
5.1.2类和对象的作用与关系96
5.2类的定义与对象的创建97
5.2.1类的定义97
5.2.2创建对象97
5.2.3类属性与类方法98
5.2.4对象方法与对象属性99
5.2.5私有方法和私有属性101
5.2.6静态方法102
5.3类的继承与多态103
5.3.1类的继承103
5.3.2方法重写105
5.3.3多态106
5.4类的其他特殊方法106
5.4.1创建迭代器和可迭代对象106
5.4.2运算符重载110
5.4.3其他对象转换为str对象111
5.4.4创建可调用对象111
5.4.5自定义异常类112
5.4.6对象方法的属性化113
5.5综合应用案例115
案例8: 利用类实现学生信息管理115
案例9: 创建银行账户管理类116
习题五117
第二部分应用开发篇
第6章模块应用121
6.1模块基础概念121
6.1.1模块的定义与作用121
6.1.2模块的导入与使用125
6.1.3模块的组织与管理128
6.2常用内置模块的使用130
6.2.1sys模块130
6.2.2os模块131
6.2.3random模块132
6.2.4time模块133
6.2.5datetime模块134
6.2.6math模块136
6.2.7re模块136
6.3创建自定义模块140
6.3.1创建自定义模块的主要步骤140
6.3.2创建自定义模块需要遵守的规范141
6.3.3自定义模块的保存位置142
6.3.4发布与分享142
6.4综合应用案例145
案例10: 随机号码生成器145
案例11: 强密码检测146
习题六147
第7章文件处理149
7.1文本文件的读写149
7.1.1什么是文本文件149
7.1.2文本文件的读写150
7.2二进制文件的读写154
7.2.1bytes数据类型154
7.2.2二进制文件的读写156
7.3CSV文件的读写157
7.3.1什么是CSV文件157
7.3.2使用csv模块对CSV文件进行读写操作158
7.4使用Excel工作簿存取数据161
7.4.1工作簿对象161
7.4.2工作表对象163
7.4.3单元格对象165
7.4.4样式相关对象166
7.5综合应用案例168
案例12: 文本文件分析与处理168
案例13: 成绩统计169
案例14: 文件加密171
习题七173第8章网络爬虫应用基础175
8.1爬虫技术基础175
8.1.1基本概念175
8.1.2爬虫的基本工作流程176
8.1.3Python爬虫环境的搭建177
8.2HTTP协议基础178
8.2.1HTTP协议/HTTP协议简介178
8.2.2HTTP请求与响应的结构179
8.2.3HTTP状态码182
8.2.4Cookie与Session183
8.3网页请求与响应处理的实现184
8.3.1使用get()方法实现HTTP请求184
8.3.2使用post()方法实现HTTP请求187
8.3.3处理HTTP响应189
8.3.4HTTP请求异常的处理191
8.4网页解析与数据提取的实现194
8.4.1HTML文档结构194
8.4.2网页解析工具: BeautifulSoup库195
8.4.3网页解析工具: lxml库199
8.4.4正则表达式在网页解析中的应用202
8.4.5Selenium库与动态网页处理203
8.4.6爬虫的法律、道德问题及遵守的规则205
8.5综合应用案例206
案例15: 爬取城市天气预报数据206
习题八208
第三部分数据科学篇
第9章NumPy库的使用213
9.1NumPy数组应用基础213
9.1.1数组的基本概念213
9.1.2创建数组215
9.1.3数组的基本操作221
9.2数组的运算227
9.2.1数组与数组的运算227
9.2.2数组与标量的运算227
9.2.3数组运算的广播机制228
9.3数据统计与分析229
9.3.1聚合函数与数据汇总229
9.3.2数组排序与搜索231
9.3.3数组集合运算函数234
9.3.4通用函数237
9.4Numpy与线性代数237
9.4.1矩阵的运算237
9.4.2矩阵分解240
9.4.3求解线性方程组242
9.5综合应用案例243
案例16: 数组计算243
案例17: 创建满足条件的随机数组244
习题九245
第10章Pandas库的使用247
10.1Pandas概述247
10.1.1结构化数据处理的挑战247
10.1.2Pandas优势248
10.2Pandas数据结构248
10.2.1Series: 带标签的一维数组248
10.2.2DataFrame: 二维表格型数据结构250
10.3数据操作基础251
10.3.1数据输入与输出251
10.3.2数据清洗与预处理254
10.3.3数据合并与连接258
10.3.4数据查询与筛选260
10.3.5数据排序262
10.3.6数据重塑与透视264
10.3.7数据采样266
10.4数据分析基础267
10.4.1数据分组与聚合267
10.4.2数据统计271
10.5综合应用案例277
案例18: 使用Series对象保存库存量277
案例19: 使用DataFrame保存客户订单信息278
习题十279
第11章Matplotlib库应用基础282
11.1Matplotlib核心概念282
11.1.1数据可视化的意义282
11.1.2Matplotlib在Python生态中的定位283
11.1.3核心架构解析284
11.2绘图基础286
11.2.1图形绘制方法286
11.2.2绘制图形的基本步骤287
11.3pyplot函数使用基础290
11.3.1绘制散点图290
11.3.2绘制柱状图291
11.3.3绘制箱线图293
11.3.4绘制误差棒图294
11.4定制图形的外观与样式295
11.4.1全局配置参数295
11.4.2设置图形的标题与图例296
11.4.3设置坐标轴的标签、范围、刻度298
11.4.4添加网格、背景与注释300
11.5多图形绘制301
11.5.1一个绘图区域实现多图形绘制302
11.5.2在多个绘图区域分别绘制图形302
11.6综合应用案例305
案例20: 品牌羽绒服直营店销量趋势图绘制305
习题十一307
