内容简介
第一篇 准备工作
1为什么要学习Python?学习Python的什么
2学习Python之前需要准备的工作有哪些
3如何看和运行本书代码
3.1输入部分
3.2输出部分
3.3错误与异常信息
3.4外部数据文件
3.5注意事项
第二篇 Python基础
4数据类型
4.1查看数据类型的方法
4.2判断数据类型的方法
4.3转换数据类型的方法
4.4特殊数据类型
4.5序列类型
5变量
5.1变量的定义方法
5.2 Python是动态类型语言
5.3 Python是强类型语言
5.4 Python中的变量名是引用
5.5 Python中区分大小写
5.6变量命名规范
5.7 iPython的特殊变量
5.8查看Python关键字的方法
5.9查看已定义的所有变量
5.10删除变量
6语句书写规范
6.1一行一句
6.2一行多句
6.3一句多行
6.4复合语句
6.5空语句
7赋值语句
7.1赋值语句在Python中的重要地位
7.2链式赋值语句
7.3复合赋值语句
7.4序列的拆包式赋值
7.5两个变量值的调换
8注释语句
8.1注释方法
8.2注意事项
9运算符
9.1特殊运算符
9.2内置函数
9.3 math模块
9.4优先级与结合方向
10 if语句
10.1基本语法
10.2 elif语句
10.3 if与三元运算
10.4注意事项
11 for语句
11.1基本语法
11.2 range()函数
11.3注意事项
12 while语句
12.1基本语法
122注意事项
13 pass语句
13.1含义
13.2作用
14列表
14.1定义方法
14.2切片操作
14.3反向遍历
14.4类型转换
14.5 extend与append的区别
14.6列表推导式
14.7插入与删除
14.8常用操作函数
15元组
15.1定义方法
15.2主要特征
15.3基本用法
15.4应用场景
16字符串
16.1定义方法
16.2主要特征
16.3字符串的操作
17序列
17.1支持索引
17.2支持切片
17.3支持迭代
17.4支持拆包
17.5支持*运算
17.6通用函数
18集合
18.1定义方法
18.2主要特征
18.3基本运算
18.4应用场景
19字典
19.1定义方法
19.2字典的主要特征
19.3字典的应用场景
20迭代器与生成器
20.1可迭代对象与迭代器
20.2生成器与迭代器
21函数
21.1内置函数
21.2模块函数
21.3用户自定义函数
22内置函数
22.1内置函数的主要特点
22.2数学函数
22.3类型函数
22.4其他功能函数
23模块函数
23.1 import模块名
23.2 import模块名as别名
23.3 from模块名import函数名
24自定义函数
24.1定义方法
24.2函数中的docString
24.3调用方法
24.4返回值
24.5自定义函数的形参与实参
24.6变量的可见性
24.7值传递与地址传递
24.8自定义函数时的注意事项
25 lambda函数
25.1 lambda函数的定义方法
25.2 lambda函数的调用方法
26模块
26.1导入与调用用法
26.2查看内置模块清单的方法
27包
27.1相关术语
27.2安装包
27.3查看已安装包
27.4更新(或删除)已安装包
27.5导入包
27.6查看包的帮助
27.7常用包
28帮助文档
28.1 help函数
28.2 docString
28.3查看源代码
28.4 doc属性
28.5 dir()函数
28.6其他方法
第三篇 Python进阶
29异常与错误
29.1 try/except/finally
29.2异常信息的显示模式
29.3断言
30程序调试方法
30.1调试程序的基本方法
30.2设置错误信息的显示方式
30.3设置断言的方法
31面向对象编程
31.1类的定义方法
31.2类中的特殊方法
31.3类之间的继承关系
31.4私有属性及@property装饰器
31.5 self和cls
31.6 new与init的区别和联系
32魔术命令
32.1运行.py文件:%run
32.2统计运行时间:%timeit与%%timeit
32.3查看历史In和Out变量:32story
32.4更改异常信息的显示模式:5a0020mode
32.5调试程序:5898272ebug
32.6程序运行的逐行统计:005A0020run与00000000run
32.7内存使用情况的统计:%memit
33搜索路径
33.1变量搜索路径
33.2模块搜索路径
34当前工作目录
34.1显示当前工作目录的方法
34.2更改当前工作目录的方法
34.3读、写当前工作目录的方法
第四篇 数据加工
35随机数
35.1一次生成一个数
35.2一次生成一个随机数组
36数组
36.1创建方法
36.2主要特征
36.3切片/读取
36.4浅拷贝和深拷贝
36.5形状和重构
36.6属性计算
36.7 ndarray的计算
36.8 ndarray的元素类型
36.9插入与删除
36.10缺失值处理
36.11 ndarray的广播规则
36.12 ndarray的排序
37 Series
37.1 Series的主要特点
37.2 Series的定义方法
37.3 Series的操作方法
38 DataFrame
38.1创建方法
38.2查看行或列
38.3引用行或列
38.4 index操作
38.5删除或过滤行/列
38.6算术运算
38.7大小比较运算
38.8统计信息
38.9排序
38.10导入/导出
38.11缺失数据处理
38.12分组统计
39日期与时间
39.1常用包与模块
39.2时间和日期类型的定义
39.3转换方法
39.4显示系统当前时间
39.5计算时差
39.6时间索引
39.7 period_range()函数
40可视化
40.1 Matplotlib可视化
40.2改变图的属性
40.3改变图的类型
40.4改变图的坐标轴的取值范围
40.5去掉边界的空白
40.6在同一个坐标上画两个图
40.7多图显示
40.8图的保存
40.9散点图的画法
40.10 Pandas可视化
40.11 Seaborn可视化
40.12数据可视化实战
41自然语言处理
41.1自然语言处理的常用包
41.2自然语言处理的包导入及设置
41.3数据读入
41.4分词处理
41.5自定义词汇
41.6停用词处理
41.7词性分布分析
41.8高频词分析
41.9词频统计
41.10关键词分析
41.11生成词云
42 Web爬取
42.1 Scrapy的下载与安装
42.2 Scrapy Shell的基本原理
42.3 Scrapy Shell的应用
42.4自定义Spider类
42.5综合应用
第五篇 数据分析
43统计分析
43.1业务理解
43.2数据读入
43.3数据理解
43.4数据准备
43.5模型类型的选择与超级参数的设置
43.6训练具体模型及查看其统计量
43.7拟合优度评价
43.8建模前提假定的讨论
43.9模型的优化与重新选择
43.10模型的应用
44机器学习
44.1机器学习的业务理解
44.2数据读入
44.3数据理解
44.4数据准备
44.5算法选择及其超级参数的设置
44.6具体模型的训练
44.7用模型进行预测
44.8模型评价
44.9模型的应用与优化
第六篇 大数据处理
45 Spark编程
45.1导入pyspark包
45.2 SparkSession及其创建
45.3 Spark数据抽象类型
45.4 Spark DataFrame操作
45.5 SQL编程
45.6 DataFrame的可视化
45.7 Spark机器学习
45.7.1创建Spark Session
45.7.2读入数据
45.7.3数据理解
45.7.4数据准备
45.7.5模型训练
45.7.6模型评价
45.7.7预测
46 Spark Python开发环境的搭建
46.1安装Anaconda
46.2安装和配置Java
46.3安装和配置Spark
46.4安装和配置Hadoop
46.5测试Spark
47 NoSQL数据库
47.1下载Memcached
47.2安装Memcached
47.3安装和导入包pYmemcache
47.4准备试验数据
47.5定义Client并进行数据读写
47.6 Memcached的更多操作
第七篇 继续学习
48 Python初学者常见错误及纠正方法
48.1 NameError:name ‘xxxx’ is not defined
48.2 IndentationError:unexpected indent
48.3 SyntaxError:invalid character in identifier
48.4 TypeError:‘XXXX’ object does not support item assignment
48.5 TypeError:unsupported operand type(s) for XXXX
48.6 IndexError:list index out of range
48.7 TypeError:type() takes XXXX arguments
48.8 SyntaxError:unexpected EOF while parsing
48.9 ModuleNotFoundError:No module named XXXX
48.10 TypeError:‘list’ object is not callable
48.11 SyntaxError:invalid syntax
48.12 AttributeError:XXXX object has no attribute XXXX
48.13 TypeError :XXXX object is not an iterator
48.14 FileNotFoundError:File XXXX does not exist
48.15 IndexError:too many indices for array
48.16 TypeError:Required argument XXXX not found
48.17 TypeError:an XXXX is required (got type YYYY)
48.18 ValueError:Wrong number of items passed XXXX,placement implies YYYY
49 Python数据分析和数据科学面试题
50继续学习本书内容的推荐资源
50.1重要网站
50.2重要图书
50.3常用模块与工具包
50.4常用统计模型
50.5核心机器学习算法
50.6继续学习数据科学的建议路线图
参考文献