Python程序设计——从编程基础到专业应用 第2版 章宁 李海峰
定 价:59 元
- 作者:章宁 李海峰
- 出版时间:2024/6/1
- ISBN:9787111753070
- 出 版 社:机械工业出版社
- 中图法分类:TP311.561
- 页码:
- 纸张:胶版纸
- 版次:
- 开本:16开
本书在内容设计和组织上深入浅出,充分发挥Python语言易上手和擅长数据分析的特点,分为Python编程基础和Python专业应用两个部分。第1部分共7章,通过Python易上手的特点帮助读者构建良好的编程思维,能够完成初步的数据分析和可视化;第2部分共3章,通过Python擅长数据分析的特点帮助读者形成自主学习并应用Python的能力,能够结合自己的专业灵活运用Python工具。本书采用任务驱动的教学理念,每章第一节均给出了本章要完成的任务(案例),所有知识点均围绕该案例实现。本书通过二维码向读者提供所有编程实例的讲解视频等扩展内容,同时为教师提供了电子课件、习题答案、源代码等辅助教学资源。
作为入门编程课程教材,本书既可作为高等院校非计算机类专业的公共课教材,也可作为计算机类专业的学习参考书。
采用任务驱动的教学理念,每章第一节均给出了本章要完成的任务(案例),所有知识点均围绕该案例实现。
重新设计和组织Python编程基础部分的内容,使其更适合初学者学习、记忆、理解和运用。
丰富数据分析与可视化的内容,包括 NumPy、Pandas、Matplotlib和Scikit-learn类库。
通过二维码向读者提供所有编程实例的讲解视频等扩展内容,同时为教师提供了电子课件、习题答案、源代码等辅助教学资源。
Python是非常灵活、接近自然语言的通用编程语言,它功能强大,适合解决各类计算问题。Python轻语法、重应用的特性使得它非常容易上手,有助于初学者形成良好的编程习惯和思维。对于非计算机类专业的学生来说,Python无疑是程序设计语言课程的首选。同时,Python拥有功能强大的第三方库,提供了完整的数据分析框架,深受数据分析人员的青睐。全世界的编程人员都在不断为Python的第三方库贡献力量,使得Python能够通过短短几行代码就可以解决一个非常复杂的问题。
2019年,《Python程序设计:从编程基础到专业应用》出版,当时国内的Python教材很少,近几年随着Python语言的流行,相关书籍如雨后春笋般涌现。此次改版,主要特色和创新体现在三个方面:一是采用任务驱动的教学理念,每章第一节均给出了本章要完成的任务(案例),所有知识点均围绕该案例实现;二是突出Python在数据分析方面的强大功能,从第 2 章开始使用Python的标准库和第三方库;三是面向财经应用,具有鲜明的专业应用特色。与第 1 版相比,第 2 版更具前沿性和专业性,主要改动包括三个方面:一是将应用实例聚焦到财经应用上,以解决专业应用中的实际问题;二是重新设计和组织Python编程基础部分的内容,使其更适合初学者学习、记忆、理解和运用;三是丰富数据分析与可视化的内容,包括 NumPy、Pandas、Matplotlib和Scikit-learn类库。
本书适用于32~48学时(2~3学分)的弹性教学,第1部分的教学需要32学时,第2部分的教学需要16学时,共计48学时。若开设课程为32学时(2学分),则可只讲第1部分,即前7章。
作为中央财经大学“十四五”本科规划教材,本书的出版要感谢学校领导、教务处和信息学院Python课程组老师给予的大力支持和帮助。章宁负责全书整体策划,以及第1~7章的编写和统稿工作;李海峰负责编写第10章,并进行第8~10章的统稿工作;王坚负责编写第8章,李燕负责编写第9章。此外,王悦和刘灿涛参与了第5~7章部分章节的编写。
作为入门编程课程教材,本书内含大量编程实例,每章最后都有习题。本书通过二维码向读者提供所有编程实例的讲解视频等扩展内容,同时为教师提供了电子课件、习题答案、源代码等辅助教学资源。
由于时间仓促,书中难免存在不妥之处,请读者批评指正,并提出宝贵意见。
章宁,教授,博士生导师,现任中央财经大学信息学院院长,兼任商务部中国服务贸易专家委员会委员、管理科学与工程学会理事、国际信息系统协会中国分会CNAIS理事。获霍英东第十三届全国高等院校青年教师三等奖。2012年获北京市优秀人才培养项目资助。2016年获“北京高校优秀德育工作者”荣誉称号。中央财经大学首届教学名师。
前言
第1部分 Python编程基础
第1章 Python起步2
1.1 案例:计算终值2
1.2 Python的安装和运行2
1.2.1 搭建编程环境2
1.2.2 创建并运行程序4
1.3 Python语言简介6
1.3.1 程序设计语言6
1.3.2 Python的起源和特性7
1.4 程序的基本要素8
1.4.1 数据类型8
1.4.2 变量10
1.4.3 运算符11
1.4.4 函数12
1.4.5 语句13
1.4.6 控制结构14
1.5 编程实践:累加、累乘16
1.6 本章小结18
1.7 习题19
第2章 数值计算21
2.1 案例:蒙特卡罗模拟计算圆周率21
2.2 数字运算符22
2.2.1 比较运算符22
2.2.2 逻辑运算符23
2.2.3 混合类型运算24
2.3 数值计算常用函数25
2.3.1 数字运算函数25
2.3.2 整型相关函数26
2.4 相关标准库27
2.4.1 math库27
2.4.2 random库29
2.4.3 time库32
2.5 编程实践:NumPy financial33
2.5.1 numpy_financial库的安装33
2.5.2 numpy_financial库的使用34
2.6 本章小结36
2.7 习题37
第3章 序列39
3.1 案例:计算圆周率的精确小数位数39
3.2 对象和类40
3.2.1 type()函数41
3.2.2 decimal库中的Decimal类41
3.3 字符串42
3.3.1 字符串的表示42
3.3.2 字符串运算符43
3.3.3 len()函数和string库45
3.3.4 字符串的常用方法46
3.4 列表和元组48
3.4.1 列表和元组的表示48
3.4.2 列表和元组的运算符49
3.4.3 列表和元组的函数51
3.4.4 列表和元组的方法52
3.5 文件53
3.5.1 文件的基本操作53
3.5.2 tkinter中的filedialog55
3.6 编程实践:Matplotlib中的pyplot56
3.7 本章小结61
3.8 习题62
第4章 非序列组合64
4.1 案例:四国宏观经济数据对比64
4.2 字典66
4.2.1 字典的表示66
4.2.2 字典的运算符和函数68
4.2.3 字典的常用方法69
4.3 集合71
4.3.1 集合的表示71
4.3.2 集合的运算符和函数72
4.3.3 集合的常用方法73
4.4 JSON文件74
4.4.1 JSON格式74
4.4.2 JSON库75
4.5 编程实践:pygal78
4.6 本章小结81
4.7 习题82
第5章 程序的控制结构84
5.1 案例:标准普尔500行业数据分析84
5.2 分支结构86
5.2.1 if-elif-else多分支语句86
5.2.2 条件表达式87
5.3 循环结构89
5.3.1 while语句89
5.3.2 嵌套循环92
5.4 CSV文件94
5.4.1 CSV格式94
5.4.2 CSV库94
5.5 编程实践:错误处理97
5.6 本章小结100
5.7 习题100
第6章 结构化程序设计102
6.1 案例:模拟乒乓球比赛102
6.2 函数104
6.2.1 函数的定义和调用104
6.2.2 参数的传递107
6.2.3 变量的作用域109
6.3 模块112
6.3.1 模块的执行和引入112
6.3.2 模块的结构113
6.4 自顶向下和自底向上115
6.4.1 自顶向下设计115
6.4.2 自底向上实施116
6.5 编程实践:调试程序120
6.6 本章小结124
6.7 习题124
第7章 面向对象的程序设计126
7.1 案例:模拟乒乓球比赛126
7.2 类和对象实例127
7.2.1 类的定义127
7.2.2 对象实例131
7.3 面向对象的基本特性133
7.3.1 封装性133
7.3.2 继承和多态性134
7.4 面向对象的程序设计过程136
7.4.1 寻找候选对象136
7.4.2 设计并定义类136
7.5 编程实践:tkinter中的弹出对话框138
7.6 本章小结141
7.7 习题142
第2部分 Python专业应用
第8章 数据分析基础146
8.1 案例:苹果公司股票价格数据的典型技术指标分析146
8.2 科学计算包 NumPy146
8.2.1 数组导入与创建146
8.2.2 数组属性148
8.2.3 数组访问149
8.2.4 数组操作149
8.2.5 数组运算151
8.3 数据处理包Pandas153
8.3.1 数据导入153
8.3.2 数据创建155
8.3.3 数据预览157
8.3.4 数据访问158
8.3.5 数据操作161
8.3.6 时间序列处理164
8.3.7 本章案例实现165
8.4 编程实践167
8.5 本章小结170
8.6 习题171
第9章 数据可视化172
9.1 案例:金融数据可视化172
9.2 Matplotlib进阶:绘图格式的基本设置172
9.3 Python中的其他常见绘图工具178
9.3.1 Pandas绘图178
9.3.2 Seaborn库183
9.4 编程实践184
9.4.1 股票K线图绘制184
9.4.2 金融文本数据分析188
9.5 本章小结190
9.6 习题190
第10章 数据分析建模191
10.1 案例:金融领域的数据分析191
10.2 Scikit-learn介绍191
10.2.1 Scikit-learn的历史191
10.2.2 Scikit-learn资源介绍192
10.3 Scikit-learn实现回归模型192
10.3.1 线性回归模型的原理192
10.3.2 线性回归模型的简单实现193
10.3.3 基于Scikit-learn的线性回归模型预测股票价格涨跌趋势195
10.4 Scikit-learn实现分类模型201
10.4.1 决策树分类模型的原理201
10.4.2 决策树分类模型的简单实现203
10.4.3 基于Scikit-learn的决策树分类模型预测是否贷款206
10.5 编程实践211
10.6 本章小结214
10.7 习题214
附录 应用配置215
参考文献218