新書推薦:
《
唐宋绘画史 全彩插图版
》
售價:NT$
449.0
《
海洋、岛屿和革命:当南方遭遇帝国(文明的另一种声音)
》
售價:NT$
485.0
《
铝合金先进成型技术
》
售價:NT$
1214.0
《
《全面与进步跨太平洋伙伴关系协定》国有企业条款研究
》
售價:NT$
449.0
《
银行业架构网络BIAN(全球数字化时代金融服务业框架)(数字化转型与创新管理丛书)
》
售價:NT$
449.0
《
金托邦:江湖中的沉重正义
》
售價:NT$
275.0
《
易经今解:释疑·解惑·见微
》
售價:NT$
403.0
《
东欧史(全二册)-“中间地带”的困境
》
售價:NT$
1010.0
|
內容簡介: |
本教材包括两部分内容:第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模块的聚类模型
评价指标
习题
附录国家统计局数据查询及下载
参考文献
|
內容試閱:
|
任何一种编程语言都有自己的语法规则、命名规范,包括变量的命名、数据类型、赋值运算、程序结构、基本函数、对外交互等,但程序员用程序解决问题的思路应是一样的。任何一名程序员,只要从开始就养成一个好的编程习惯,理清自己的编程思路,就一定会成为优秀的程序员。
我从事编程已有二十多年,使用过的编程语言超过十种,一次偶然的机会我接触到Python,并喜欢上它,现结合自己多年的编程经历和教学实践编写了本教材。
本教材主要包括两部分内容:前9章是Python编程的基础知识,涵盖了Python各个应用领域的知识点;后5章是Python数据分析的基础知识及应用。
本教材在介绍基础知识点时,都会结合具体的例子进行讲解。尤其是在数据分析方面,提供了多种多样的数据格式,包括文本文件(*.txt)、逗号分隔文件(*.csv)、Excel文件(*.exl)、Word文件(*.doc)、NumPy压缩文件(*.npz)、其他二进制文件、数据库文件(MySQL),使读者在不知不觉中,提高了处理各种数据的编程能力。
另外,在第6章,增加了人脸识别、语音识别方面的案例。在第14章,增加了逻辑回归、神经网络、支持向量机等机器学习方面的内容。特别是深度学习离不开神经网络,而神经网络的学习成本非常高,为了提高读者的学习效率,14.4节对此进行了大胆尝试。
本教材只需要读者具备计算机的基础知识即可,不需要太多计算机方面的前导课程,如果学过C语言,则上手会相对容易。
本书可作为Python程序设计与数据分析课程的教材,还可作为在校的研究生、高校教师等科研工作者的自学用书。
本教材配备了源代码、习题答案及数据文件,都可通过本书提供的百度网盘,或机械工业出版社的相应渠道免费获得。选用本书作为教材的教师,还可获得教材的PPT及教学大纲。
本教材的顺利出版,离不开各方面的大力支持。首先感谢父母的养育之恩,让我从一个贫苦的农村娃,成长为一名高校教师。其次感谢我爱人背后的默默支持,让我能安心下笔,女儿的不停鞭策,也给了我无穷动力。另外,还要感谢南昌航空大学的领导和同事们的大力支持。后,要感谢机械工业出版社的吉玲编辑,她工作认真、责任心强,我们对书稿的内容多次沟通、反复修改,合作非常愉快,这是我人生中一段快乐的旅程。
感谢本教材的每一位读者,学习编程是一件苦中有乐之事,希望您能从中受益。
由于编者水平有限,书中错误或不当之处在所难免,欢迎读者批评指正,我的邮箱是627869587@qq.com。
艾小伟
于南昌前湖
|
|