本教材包括两部分内容:第1部分是前9章,内容为Python编程基础知识;第2部分是后5章,内容为Python数据分析基础知识及应用。
第1章从编程语言的特点入手,介绍Python的学习路径及其安装方法。第2章介绍Python的基础语法,包括变量、数据类型、运算符、内置函数。第3章介绍Python的四种序列结构,包括列表、元组、字典、集合。第4章介绍Python的条件控制、循环控制结构。第5章介绍Python的自定义函数。第6章介绍Python常用标准库、第三方库的功能。第7章介绍字符串的编码格式及常用方法。第8章介绍Python对文本文件、二进制文件的操作。第9章介绍Python面向对象编程的机制及特点。第10章介绍NumPy数组及数组间的运算。第11章介绍Matplotlib库下6种基本图形及动态图的绘制。第12章介绍Python与MySQL数据库编程。第13章介绍Pandas统计分析基础。第14章介绍skl库下,常用机器学习算法的使用。
本教材配套以下教学资源:教学PPT、习题答案、数据分析支撑文件、程序代码等,
请选用本书作教材的老师登录www.cmpedu.com注册下载,或发邮件至jinacmp@163.com索取(注明学校名+姓名)。
书中的程序代码均在Python 3.8、Anaconda 3上调试通过,有些需要安装第三方库。
本书可作为普通高校计算机、大数据、人工智能、金融管理等专业的教材,也可供广大从事数据分析、人工智能、机器学习等应用系统开发的技术人员参考。
目录
前言
教材使用说明
数据清单
第1章Python概述
1.1Python语言简介
1.1.1编程语言概述
1.1.2Python语言的特点
1.1.3Python语言的应用领域
1.2Python学习路径
1.2.1Python 的 3 个版本
1.2.2Python知识表格
1.2.3Jupyter Notebook:学习别人的
源代码的利器
1.3Python 安装
1.3.1Windows 系统安装 Python
1.3.2Python 开发环境IDEL
1.4Python编程规范
1.4.1Python 文件类型
1.4.2程序书写规范
1.5Python 第三方库的安装
1.5.1第三方库的安装方法
1.5.2Anaconda 发行版及安装
习题
第2章Python基础语法
2.1变量及数据类型
2.1.1变量及命名规范
2.1.2数值型数据
2.1.3字符串型数据
2.1.4转义字符
2.1.5组合数据类型
2.2Python运算符
2.2.1算术运算符(+、-、、 /、 //、
%、)
2.2.2关系运算符(<、<=、>、>=、
==、 !=)
2.2.3逻辑运算符(and、or、not)
2.2.4成员测试运算符(in、not in)
2.2.5集合运算符( &、、^ 、-)
2.2.6各种各样的赋值运算符
2.2.7位运算符
2.3Python内置函数
2.3.1数据类型强制转换与类型判断
2.3.2最大值、最小值与求和函数
2.3.3区间迭代对象生成函数
2.3.4基本输入、输出函数
2.3.5排序函数
2.3.6枚举与迭代
2.3.7压缩函数
2.3.8打开磁盘上的文件
2.4Python保留字说明
习题
第3章Python 序列结构
3.1序列概要
3.1.1序列索引
3.1.2序列切片
3.1.3序列相加、相乘
3.1.4检查元素是否包含在序列中
(含集合、字典)
3.1.5和序列相关的内置函数
3.2列表与列表推导式
3.2.1创建、删除列表
3.2.2访问列表元素
3.2.3列表对象常用方法
3.2.4列表支持的运算符
3.2.5与列表相关的内置函数
3.2.6列表推导式
3.2.7列表多元素访问:切片
3.3元组与生成器
3.3.1创建元组及访问元素
3.3.2元组与列表的异同
3.3.3Python的生成器
3.4字典与字典推导式
3.4.1创建字典
3.4.2访问字典元素
3.4.3字典元素的添加、修改与删除
3.4.4字典推导式
3.4.5字典应用案例
3.5集合与集合推导式
3.5.1集合的创建与访问
3.5.2集合元素的增加与删除
3.5.3两个集合的运算
3.5.4集合推导式
3.5.5集合应用案例
习题
第4章Python 程序控制结构
4.1条件表达式
4.2if分支结构
4.3while循环和for-in循环
4.3.1循环结构语法格式
4.3.2else子语句在循环体中的妙用
4.3.3break和continue语句
4.4Python在无穷级数求和方面的应用
习题
第5章Python 自定义函数
5.1函数的定义与调用
5.1.1函数定义与调用基本语法
5.1.2函数的说明文档
5.2函数参数
5.2.1位置参数
5.2.2关键字参数
5.2.3默认参数
5.2.4可变长参数
5.3变量的作用域
5.3.1Python局部变量
5.3.2Python全局变量
5.4lambda 表达式
5.4.1lambda表达式的创建及其特点
5.4.2lambda函数的用法
5.5生成器函数
5.5.1生成器概念及用法
5.5.2生成器函数与普通函数的比较
5.6函数的递归调用
5.7函数精彩案例赏析
5.8提高代码可读性的几点建议
习题
第6章Python常用库
6.1Python 库介绍
6.2Python 常用标准库
6.2.1math库
6.2.2random库
6.2.3string库
6.2.4sys库
6.2.5os库
6.2.6copy库
6.2.7time库
6.2.8datetime库
6.2.9itertools库
6.2.10其他标准库
6.3Python 常用第三方库
6.3.1PIL
6.3.2OpenCV
6.3.3speech
6.3.4pyttsx3库
6.3.5SciPy库
6.3.6Python网络库
6.3.7Python数据库操作库
习题
第7章Python字符串
7.1内置的字符串处理函数
7.2字符串编码格式
7.2.1ASCII码
7.2.2GB 18030码
7.2.3Unicode码
7.2.4UTF-8码
7.2.5Python字符串编码函数:bytes()、
encode()、decode()
7.3字符串格式化
7.3.1使用%操作符进行格式化
7.3.2使用format() 方法进行格
式化
7.4字符串对象常用方法
7.4.1查找
7.4.2替换
7.4.3拆分
7.4.4连接
7.4.5转换
7.4.6删除
7.4.7判断字符串开始或结束
7.4.8判断字符串中字符
7.4.9字符串切片
7.4.10zip()、sorted()、reversed()、
enumerate()、map()、eval()
7.5jieba库的使用
7.5.1jieba库概述
7.5.2jieba库的常用函数
7.5.3jieba分词的原理
7.5.4统计三国演义中人物的出场
次数
7.6综合案例解析
习题
第8章Python文件操作
8.1文件及其分类
8.2文件夹及文件操作
8.2.1文件夹操作
8.2.2文件打开函数
8.2.3文件对象属性与常用方法
8.2.4上下文管理语句with
8.2.5读写文本文件案例
8.3常见二进制文件的操作方法
8.3.1使用open() 读写二进制文件
8.3.2使用pickle模块读写dat文件
8.3.3使用struct模块读写二进制文件
8.3.4使用shelve模块实现数据二进制
持久化保存
8.3.5使用xlrd、openpyxl 模块读Excel
文件
8.3.6使用docx 模块读写Word 文件
习题
第9章面向对象程序设计
9.1程序设计的方法
9.1.1结构化程序设计
9.1.2面向对象程序设计
9.2类的定义与使用
9.3属性与方法
9.3.1类变量和实例变量
9.3.2私有变量与公有变量
9.3.3类方法与实例方法
9.3.4属性
9.3.5封装
9.4继承
9.5特殊方法
9.6综合案例解析
习题
第10章NumPy库
10.1NumPy数组对象ndarray
10.1.1创建数组
10.1.2生成随机数
10.1.3通过索引访问数组
10.2NumPy通用函数及数组之间的运算
10.2.1四则运算
10.2.2ufunc函数的广播机制(慎用)
10.2.3利用 NumPy 进行统计分析
10.2.4在数组中插入一行(或一列)
10.3NumPy 矩阵运算
10.3.1创建NumPy矩阵
10.3.2NumPy矩阵运算
10.3.3NumPy下的线性代数运算
10.3.4Python中列表、矩阵、数组之间
的转换
10.4NumPy 读写文件
10.4.1用np.load()、np.save() 读写
npy 或 npz 文件
10.4.2用np.loadtxt()、np.savetxt()
读写txt 或csv 文本文件
习题
第11章Matplotlib库与数据可视化
11.1初识Matplotlib
11.2掌握pyplot基础语法
11.2.1创建画布与创建子图
11.2.2添加画布内容:标题、坐标轴、
图例
11.2.3保存与展示图形
11.3绘制折线图plt.plot()
11.3.1折线图plot函数完整语法
11.3.2设置plot的风格和样式
11.4绘制散点图plt.scatter()
11.5绘制直方图plt.hist()
11.5.1直方图的概念及类别
11.5.2直方图的画法
11.6绘制条形图plt.bar()
11.6.1竖放条形图:plt.bar()
11.6.2横放条形图:plt.barh()
11.6.3并列条形图:plt.bar() 或
plt.barh()
11.7绘制饼图plt.pie()
11.8绘制箱线图plt.boxplot()
11.8.1箱线图概念及绘制方法
11.8.2箱线图boxplot函数用法
11.8.3npz文件的读取
11.8.4绘图综合案例
11.9用Matplotlib绘制动态图及保存gif
格式文件
11.9.1利用交互模式绘制动态图
11.9.2利用FuncAnimation绘制动
态图
11.10Python 其他图像功能
11.10.1图片像素处理
11.10.2绘制3D图
11.10.3绘制极坐标条形图(玫瑰图)
习题
第12章Python与MySQL数据库
12.1MySQL数据库的安装及使用
12.1.1MySQL数据库的安装及root密码
修改
12.1.2MySQL数据库的使用
12.2Python与MySQL数据库编程
12.2.1Python建立与MySQL数据库连接
的connection对象
12.2.2Python操纵MySQL数据库的
cursor对象
12.2.3编程案例:将股票交易数据(Excel
格式)成批插入数据库
习题
第13章Pandas统计分析基础
13.1读取数据库中的数据及DataFrame的
数据访问
13.1.1读取数据库中的数据
13.1.2访问DataFrame中的数据
13.2Pandas读写文本文件(.csv)
13.2.1读文本文件(.csv)
13.2.2写文本文件(.csv)
13.3Pandas读写Excel文件
13.3.1读Excel文件
13.3.2写Excel文件
13.4股票数据案例:Tushare库的使用
13.4.1Tushare 数据接口注册
13.4.2获取沪深股票基本信息
13.4.3获取沪深A股某日所有股票交易
数据
13.4.4获取某只股票自上市以来的交易
数据
习题
第14章sklearn数据建模
14.1sklearn模块功能
14.1.1数据分析的算法
14.1.2sklearn库的常用模块
14.1.3加载datasets模块中的数据集
14.1.4数据标准化的种类
14.1.5sklearn数据预处理:数据标准化、
降维
14.1.6将数据集划分为训练集和测
试集
14.1.7模型评估:sklearn.metrics
常用库
14.1.8利用sklearn进行数据建模的
步骤
14.2线性回归
14.2.1多元线性回归的基本原理
14.2.2岭回归与拉索回归
14.2.3利用sklearn库构建线性回归
模型
14.3logistic回归
14.3.1logistic回归模型
14.3.2sklearn库构建logistic回归模型:
ROC曲线的应用
14.3.3softmax逻辑回归模型处理多分类
问题
14.4神经网络
14.4.1一般神经元模型的组成:
M-P模型
14.4.2多层感知器神经网络:
BP算法
14.4.3sklearn.neural_network库构建
神经网络模型
14.5支持向量机
14.5.1支持向量机的基本模型
14.5.2支持向量机的对偶问题
14.5.3非线性支持向量机与核函数
14.5.4sklearn.svm库构建支持向量机
模型
14.5.5SVR进行回归预测:过拟合与股票
预测
14.6数据聚类
14.6.1聚类分析的相关概念
14.6.2基于划分的聚类算法:
k-means
14.6.3基于层次的聚类算法:
凝聚法
14.6.4基于密度的聚类算法:
DBSCAN 算法
14.6.5sklearn.metrics模块的聚类模型
评价指标
习题
附录国家统计局数据查询及下载
参考文献