工具 20
1.5第一个Python程序 22
1.5.1从“Hello,Python!”开始 22
1.5.2Python的交互式命令行 24
1.6本章小结 25
第2章Python起步必备 27
2.1Python代码的组织形式和注释方式 27
2.1.1用缩进来分层 28
2.1.2代码的两种注释方式 29
2.1.3Python语句的断行 30
2.2Python的基本输入/输出函数 31
2.2.1接收输入的input()函数 31
2.2.2输出内容的print()函数 32
2.3Python对中文的支持 33
2.3.1Python3之前的版本如何使用中文 33
2.3.2更全面的中文支持 36
2.4简单实用的Python计算器 37
2.4.1直接进行算术运算 37
2.4.2math模块提供丰富的数学函数 38
2.4.3Python对大整数的支持 39
2.5本章小结 40
第3章Python的数据类型与流程控制语句 41
3.1Python数据类型:数字 42
3.1.1整型和浮点型 42
3.1.2运算符 43
3.2Python数据类型:字符串 45
3.2.1Python中的字符串 45
3.2.2字符串中的转义字符 46
3.2.3操作字符串 46
3.2.4字符串的索引和分片 49
3.2.5格式化字符串 50
3.2.6字符串、数字类型的转换 50
3.2.7原始字符串 51
3.3Python数据类型:列表和元组 52
3.3.1创建和操作列表 52
3.3.2创建和操作元组 53
3.4Python数据类型:字典 54
3.5Python数据类型:文件 55
3.6Python数据类型:布尔值 56
3.7Python的流程控制语句 56
3.7.1分支结构:if语句 57
3.7.2循环结构:for语句 59
3.7.3循环结构:while语句 62
3.8本章小结 63
第4章可复用的函数与模块 64
4.1Python自定义函数 65
4.1.1函数的定义 65
4.1.2函数调用 66
4.2参数让函数更有价值 67
4.2.1有默认值的参数 67
4.2.2参数的传递方式 69
4.2.3如何传递任意数量的参数 70
4.2.4用参数返回计算结果 70
4.3变量的作用域 71
4.4最简单的函数:使用lambda表达式定义函数 72
4.5可重用结构:Python模块 73
4.5.1Python模块的基本用法 73
4.5.2Python在哪里查找模块 75
4.5.3是否需要编译模块 77
4.5.4模块也可独立运行 78
4.5.5如何查看模块提供的函数名 79
4.6用包来管理多个模块 80
4.6.1包的组成 80
4.6.2包的内部引用 81
4.7本章小结 81
第5章数据结构与算法 82
5.1表、栈和队列 82
5.1.1表 83
5.1.2栈 84
5.1.3队列 86
5.2树和图 88
5.2.1树 88
5.2.2二叉树 89
5.2.3图 93
5.3查找与排序 95
5.3.1查找 96
5.3.2排序 97
5.4本章小结 100
第6章面向对象的Python 101
6.1面向对象编程概述 101
6.1.1Python中的面向对象思想 102
6.1.2类和对象 102
6.2在Python中定义和使用类 103
6.2.1类的定义 104
6.2.2类的使用 105
6.3类的属性和方法 106
6.3.1类的属性 107
6.3.2类的方法 108
6.4类的继承 111
6.4.1使用继承 111
6.4.2Python的多重继承 112
6.5在类中重载方法和运算符 114
6.5.1方法重载 114
6.5.2运算符重载 115
6.6在模块中定义类 117
6.7本章小结 119
第7章异常处理与程序调试 120
7.1异常的处理 120
7.1.1使用try语句捕获异常 121
7.1.2常见异常的处理 123
7.1.3多重异常的捕获 124
7.2用代码引发异常 125
7.2.1使用raise语句引发异常 126
7.2.2assert——简化的raise语句 127
7.2.3自定义异常类 128
7.3使用pdb模块调试Python脚本 128
7.3.1调试语句块 129
7.3.2调试表达式 129
7.3.3调试函数 130
7.3.4设置断点 131
7.3.5pdb调试命令 131
7.4在PythonWin中调试脚本 134
7.5本章小结 136
第8章pip软件包管理 137
8.1安装pip 137
8.2更新pip 138
8.3pip常用操作 138
8.3.1安装软件包 138
8.3.2卸载软件包 139
8.3.3更新软件包 139
8.3.4显示本地所有已经安装的软件包 139
8.3.5显示软件包的细节 139
8.3.6搜索软件包 140
8.3.7通过wheel文件安装软件包 141
8.4本章小结 141
第2篇Python数据分析工具入门
第9章IPython科学计算库 142
9.1IPython简介 143
9.2安装IPython及其他相关库 144
9.2.1使用Anaconda安装 144
9.2.2使用pip安装 145
9.3IPython壳基础 146
9.3.1自动补全 147
9.3.2检查 149
9.3.3%run命令 150
9.3.4快捷键 150
9.3.5异常和错误定位 151
9.3.6魔法方法 151
9.3.7和操作系统交互 152
9.3.8代码分析:%prun和%run 153
9.3.9目录标签系统 155
9.3.10嵌入IPython 155
9.4融合Matplotlib库和Pylab模型 156
9.5输入和输出变量 157
9.6交互式调试器 158
9.7计时功能 159
9.8重新载入模块 160
9.9配置IPython 161
9.10Jupyter 162
9.10.1基于Qt的控制台 162
9.10.2JupyterNotebook 165
9.11IPython和JupyterNotebook的关系 170
9.12本章小结 173
第10章Numpy科学计算库 174
10.1Numpy基础 174
10.1.1数组对象介绍 175
10.1.2生成数组 176
10.1.3数组对象数据类型 180
10.1.4打印数组 182
10.2数组的基本操作 184
10.3基本的分片和索引操作 186
10.4高级索引 189
10.4.1整数索引 189
10.4.2布尔索引 190
10.4.3布尔索引的简单应用 192
10.5改变数组的形状 193
10.6组装、分割数组 195
10.7数组的基本函数 196
10.8复制和指代 198
10.9线性代数 199
10.10使用数组来处理数据 201
10.11Numpy的where()函数和统计函数 203
10.11.1where()函数 203
10.11.2统计函数 205
10.12输入与输出 206
10.12.1二进制文件 206
10.12.2文本文件 207
10.13生成随机数 208
10.14数组的排序和查找 210
10.14.1排序 210
10.14.2查找 212
10.15扩充转换 213
10.16本章小结 215
第11章pandas数据分析处理库 216
11.1pandas数据结构介绍 217
11.1.1序列 217
11.1.2数据框 221
11.2索引对象 226
11.3核心的基本函数 227
11.4索引和旋转 229
11.5算术运算与对齐 232
11.6处理默认值 233
11.7多级索引 237
11.8读/写数据 239
11.9组合数据 243
11.10数据分组操作 247
11.11时间序列 249
11.11.1时间序列介绍 250
11.11.2使用时间序列作图 253
11.12本章小结 259
第12章Matplotlib数据可视化 260
12.1Pyplot模块介绍 261
12.1.1plot()函数 261
12.1.2绘制子图 264
12.1.3添加注释 266
12.1.4其他的坐标轴类型 268
12.2应用Pyplot模块 269
12.3Artist模块 275
12.3.1Artist模块概述 275
12.3.2Artist的属性 277
12.4使用pandas绘图 283
12.5本章小结 287
第3篇Python数据分析案例实战
第13章案例1:数据挖掘 288
13.1贝叶斯理论介绍 288
13.2贝叶斯分类器的实现 290
13.3协同过滤推荐系统 295
13.3.1相似度计算 296
13.3.2协同过滤推荐系统的实现 300
13.4本章小结 304
第14章案例2:玩转大数据 305
14.1案例概述 306
14.1.1了解大数据的处理方式 306
14.1.2处理日志文件 307
14.1.3案例目标 308
14.2日志文件的分割 309
14.3编写Map()函数处理小文件 311
14.4编写Reduce()函数 313
14.5本章小结 315