目录
第1章Python语言概述1
1.1Python语言简介1
1.2Python开发环境2
1.2.1Python安装和使用2
1.2.2PyCharm安装和使用5
1.2.3Anaconda安装和使用8
1.3扩展库的安装与导入10
1.3.1在PyCharm中安装扩展库10
1.3.2使用pip安装扩展库10
1.3.3扩展库的导入11
1.4我的第一个Python程序12
1.4.1使用IDLE开发环境新建程序12
1.4.2使用PyCharm开发环境新建程序12
1.4.3使用Jupyter Notebook开发环境新建程序14
1.5Python的编码规范16
1.6本章小结17
习题17
第2章Python语言基础19
2.1标识符、关键字和变量19
2.1.1关键字19
2.1.2标识符19
2.1.3变量20
2.2Python的数据类型21
2.2.1数字类型21
2.2.2布尔类型22
2.2.3字符串22
2.2.4序列类型23
2.3运算符与表达式23
2.3.1算术运算符与表达式23
2.3.2赋值运算符与表达式24
2.3.3关系运算符与表达式25
2.3.4逻辑运算符与表达式25
2.3.5成员运算符与表达式27
2.3.6身份运算符与表达式27
2.4基本输入/输出语句28
2.4.1输入语句28
2.4.2输出语句28
2.5常用内置函数31
2.5.1转换函数31
2.5.2元素数量、求和函数32
2.5.3最大值、最小值函数32
2.5.4排序、逆序函数33
2.5.5range()函数34
2.6本章小结34
习题34
第3章Python流程控制语句37
3.1顺序结构37
3.2选择结构37
3.2.1单分支选择结构37
3.2.2双分支选择结构38
3.2.3多分支选择结构39
3.2.4嵌套的分支结构40
3.3循环结构41
3.3.1for循环41
3.3.2while循环43
3.3.3break与continue语句44
3.3.4循环的嵌套45
3.4综合示例47
3.5本章小结50
习题50
第4章序列类型52
4.1列表52
4.1.1创建与删除列表52
4.1.2列表元素访问及切片操作53
4.1.3列表元素的添加、删除、修改54
4.1.4统计列表元素出现的次数57
4.1.5对列表进行排序57
4.1.6成员资格判断58
4.1.7列表推导式59
4.2元组60
4.2.1元组的创建与删除60
4.2.2元组元素的访问及切片操作61
4.2.3元组的连接与扩展62
4.2.4元组的统计与排序63
4.2.5成员资格判断63
4.2.6列表与元组的区别63
4.2.7生成器表达式64
4.3字典65
4.3.1字典的创建与删除65
4.3.2访问字典66
4.3.3添加、修改和删除字典元素68
4.3.4字典的复制70
4.3.5字典推导式71
4.4集合72
4.4.1集合的创建与删除72
4.4.2集合元素的添加与删除73
4.4.3集合运算75
4.5序列封包和序列解包75
4.6zip()、map()、filter()和reduce()函数76
4.7本章小结79
习题79
第5章字符串与正则表达式81
5.1字符串基本操作81
5.1.1字符串的创建与删除81
5.1.2字符串的连接与扩展82
5.1.3字符串的长度计算82
5.1.4字符串的索引和切片83
5.1.5成员资格判断83
5.2字符串常用方法84
5.2.1字符串索引84
5.2.2字符统计和查询84
5.2.3字符串的替换85
5.2.4字符串的分隔与连接86
5.2.5字符串中字母大小写转换86
5.2.6字符串的对齐87
5.2.7字符串的测试88
5.2.8字符串两侧字符的删除88
5.2.9字符串中的字符判断89
5.2.10格式化字符串89
5.3正则表达式92
5.3.1正则表达式简介92
5.3.2正则表达式常用符号93
5.3.3re模块94
5.3.4正则表达式应用96
5.4本章小结97
习题97
第6章Python函数100
6.1函数的定义与使用100
6.1.1函数定义与调用100
6.1.2函数参数的传递方式101
6.1.3函数参数的类型102
6.1.4参数传递的序列解包105
6.1.5lambda函数106
6.1.6递归函数106
6.1.7生成器函数108
6.2变量作用域109
6.3本章小结111
习题111
第7章Python的文件操作114
7.1文件的打开与关闭114
7.2Python对文件内容的操作116
7.2.1读取文件数据116
7.2.2向文件写数据117
7.2.3文件的定位读写118
7.3文件和目录操作119
7.3.1文件的目录操作119
7.3.2常用的文件操作函数121
7.4CSV文件122
7.4.1CSV文件创建122
7.4.2CSV文件读写操作123
7.5文件操作的应用124
7.6本章小结126
习题126
第8章面向对象程序设计129
8.1面向对象编程概述129
8.2类与对象的创建129
8.2.1类的创建130
8.2.2对象的创建130
8.3类的组成130
8.3.1构造方法130
8.3.2self参数131
8.3.3成员变量和类变量132
8.3.4实例方法、类方法和静态方法132
8.4类的继承与多态134
8.4.1类的继承134
8.4.2类的多态136
8.5面向对象编程的综合应用137
8.6本章小结138
习题138
第9章异常处理139
9.1异常处理概述139
9.2Python的异常类139
9.3异常处理机制140
9.3.1try except语句140
9.3.2else语句和finally语句141
9.4抛出异常143
9.5用户自定义异常143
9.6本章小结144
习题144
第10章turtle库、jieba库、wordcloud库应用146
10.1应用turtle库绘图146
10.1.1turtle库的常用函数146
10.1.2turtle库绘图示例149
10.2应用jieba库分词151
10.2.1jieba库简介151
10.2.2jieba库的常用函数151
10.2.3词性标注152
10.2.4词库中添加与删除词语152
10.2.5关键词提取154
10.3应用wordcloud库实现文本数据可视化154
10.4本章小结157
习题157
第11章数据库编程159
11.1数据库简介159
11.2关系数据库语言SQL160
11.3MySQL数据库162
11.3.1MySQL数据库基本知识162
11.3.2在Python中使用MySQL数据库163
11.4SQLite数据库166
11.4.1SQLite数据库基本知识166
11.4.2在Python中使用SQLite数据库168
11.5本章小结169
习题170
第12章NumPy数值计算172
12.1NumPy数组及常见操作172
12.1.1创建数组172
12.1.2访问数组中的元素175
12.1.3数组元素的增加、修改、删除176
12.1.4数组排序178
12.1.5改变数组形状及数组转置179
12.1.6数组的运算180
12.1.7数组的函数运算181
12.1.8数组布尔运算及查询184
12.1.9数组元素的分段处理186
12.1.10数组堆叠与合并187
12.2NumPy矩阵及常见操作187
12.2.1创建矩阵188
12.2.2矩阵运算及转置189
12.2.3矩阵统计方法190
12.3文件数据的读取及保存191
12.3.1文件数据的读取191
12.3.2文件数据的保存192
12.4NumPy综合应用193
12.4.1NumPy数组的应用193
12.4.2NumPy矩阵的应用194
12.5本章小结195
习题195
第13章Pandas统计分析197
13.1Pandas数据结构197
13.1.1创建Series数据197
13.1.2创建DataFrame数据198
13.1.3创建时间序列数据200
13.2读取文件中的数据200
13.2.1读取Excel文件中的数据200
13.2.2读取其他文件中的数据202
13.3数据的访问与条件筛选203
13.3.1DataFrame数据访问与条件筛选203
13.3.2Series数据访问与条件筛选206
13.4数据的统计207
13.5数据的基本操作208
13.5.1数据的增加、修改和删除208
13.5.2数据排序和排名211
13.6数据的汇总与重采样213
13.6.1数据的分组213
13.6.2数据的透视表与交叉表214
13.6.3数据的重采样技术217
13.7数据的拆分与合并217
13.8数据的清洗218
13.8.1处理异常值218
13.8.2处理缺失值219
13.8.3处理重复值220
13.9数据的导出221
13.10本章小结222
习题222
第14章Matplotlib可视化226
14.1基本绘图函数plot()226
14.2图表的常用设置227
14.2.1设置画布227
14.2.2设置坐标轴228
14.2.3添加文本标签228
14.2.4设置标题和图例229
14.2.5添加注释230
14.3常用图表的绘制231
14.3.1绘制折线图与散点图231
14.3.2绘制柱状图232
14.3.3绘制直方图233
14.3.4绘制饼图235
14.3.5绘制面积图237
14.3.6绘制热力图238
14.3.7绘制箱线图240
14.3.8绘制3D图241
14.3.9绘制多个子图表243
14.4图表的保存245
14.5本章小结246
习题246
第15章scikitlearn机器学习实战248
15.1回归分析248
15.2聚类分析250
15.3决策树分类252
15.4朴素贝叶斯分类255
15.5协同过滤算法推荐258
15.6本章小结261
习题261
参考文献262
