高等教育 > 计算机基础教育

Python程序设计(第二版)

书号:9787113335687 套系名称:河南省“十四五”普通高等教育规划教材

作者:甘勇 吴怀广 张伟伟 许绘香 出版日期:2026-08-01

定价:59.80 页码 / 开本:无 /16

策划编辑:韩从付 责任编辑:闫钇汛

适用专业:计算机基础教育 适用层次:高等教育

最新印刷时间:2026-08-01

资源下载
内容简介 前言 目录 作者介绍 图书特色
  • 本书以教育部等九部门联合印发的《关于加快推进教育数字化的意见》为指导,积极响应“全面推进智能化,促进人工智能助力教育变革”的要求而编写。全书系统构建了从Python编程基础到人工智能前沿应用的完整知识体系:基础入门模块(第1~2章)初识Python,讲解 Python 语法:核心编程模块(第3~6章)精讲Python数据结构、函数、异常处理机制与文件处理;编程进阶模块(第7~9章)深入讲解函数式编程、面向对象编程、模块与包;应用编程模块(第10~12章)介绍了并发编程、数据库编程及Tkinter 图形用户界面开发,培养工程能力;实战模块(第13~16章)聚焦智能应用与实践,涵盖数据分析、机器学习、深度学习及大模型应用等,实现技术贯通。本书旨在为高校人工智能相关专业提供一套理论与实践深度融合的编程教材。
    
    本书除具有“循序渐进、案例驱动”的特色外,还具有以下特色:一是融入新技术,新增前沿内容与案例,贴合Python技术发展趋势;二是教学适配性高,优化知识点编排,补充针对性练习与实例,兼顾不同层次的学习者;三是体例和模块创新,设置拓展阅读、思考与练习,增设实战模块,形成“知识点一实例一练习一拓展”闭环,实用高效。
    
    本书适合作为高等院校计算机科学与技术、软件工程、人工智能、数据科学与大数据技术等专业的教材,也可作为对人工智能应用开发有浓厚兴趣的研究生及相关领域工程师的参考书。
  •        Python作为一门简洁、高效、通用的编程语言,已成为计算机及相关专业的核心基础课程,同时广泛应用于数据分析、人工智能开发等多个领域,其课程地位日益凸显,发展前景广阔。随着Python技术的快速迭代和高等教育教学改革的不断深入,本书上一版在使用过程中逐渐显现出部分内容滞后、案例更新不及时、教学适配性不足等问题。为更好地满足教学需求、贴合行业发展趋势,我们对第一版进行了全面修订。
           本书的写作立足“以学为本、学以致用”的理念,结合Python技术发展现状和岗位实际需求,兼顾理论系统性与实践实用性,既要让学习者掌握扎实的编程基础,也要培养其解决实际问题的能力,助力学习者实现从理论学习到实践应用的顺畅衔接。
           本书内容涵盖Python编程从基础到进阶、从理论到实践的完整体系,共16章,具体如下:第1章初识Python,介绍Python的发展历史、特点及环境搭建;第2章Python语法基础,讲解语法规则、变量、数据类型及流程控制语句;第3章Python数据结构,详细介绍列表、元组、字典、集合、字符串的特性与操作;第4章Python函数,深入讲解函数的定义与调用、返回值及各类参数,同时配套函数注解与文档等拓展内容;第5章Python异常处理机制,系统介绍异常类、异常的捕获与处理结构等内容;第6章Python文件处理,详细介绍文件的打开与关闭、读写操作,以及CSV、JSON文件的读写方法等;第7~9章作为编程进阶模块,依次介绍函数式编程、面向对象编程、模块与包,其中函数式编程涵盖lambda表达式、高阶函数及相关工具模块,面向对象编程讲解类与对象、属性与方法、继承与多态等核心知识点,模块与包则介绍导入机制、标准库使用及第三方模块管理,助力读者夯实进阶编程能力;第10-12章作为应用编程模块,聚焦并发编程、数据库编程及Tkinter图形用户界面开发,涵盖多进程、多线程编程,SQLite数据库操作,TCP/UDP网络通信及GUI组件与布局等实用内容,配套相关实例助力应用能力提升;第13~16章作为实战模块,围绕数据分析、机器学习、深度学习及大模型应用实践展开,结合scikit-learn、PyTorch等常用库,讲解实战流程与案例,实现基础与前沿、理论与实战的深度融合。
           本次修订在保留原教材“循序渐进、案例驱动”核心特色的基础上,进一步优化编写体系,形成了三大鲜明特色:一是融入新技术,新增了大模型应用、知识图谱构建等前沿内容,替换了过时案例和技术知识点,贴合当前Python技术发展趋势;二是教学适配性高,优化了知识点编排,补充了更多有针对性的练习和综合实例,兼顾不同层次学习者的学习需求;三是体例和模块创新,配套拓展阅读、思考与练习,增设综合实例模块,实现“知识点一实例一练习一拓展”的闭环学习。
           本书建议总课时为32~74学时,可根据不同院校的教学需求灵活调整:
           本书由甘勇、吴怀广、张伟伟、许绘香任主编,张静、金松河、王晓任副主编。全书由甘勇、吴怀广和张伟伟负责整体的策划、统筹及审定工作。具体编写分工为:第1章由甘勇与金松河共同编写,第2章和第8章由金松河编写,第3章和第4章由张静编写,第5章由甘勇与许绘香共同编写,第6章和第9章由张伟伟编写,第7章和第15章由何亚琼编写,第10章和第16章由王榕编写,第11章由吴怀广编写,第12章和第13章由史雯隽编写,第14章由王晓编写。许绘香负责配套电子资源的整理和审校工作。全体编写人员通力协作,共同完成了本书的创作任务。
           本书适合作为普通高等院校计算机科学与技术、软件工程、人工智能、数据科学与大数据技术等专业学生的教材,也可作为对人工智能应用开发有浓厚兴趣的研究生及相关领域工程师作为系统学习的参考书。
           本书配套PPT、实验源代码、习题答案等资源,可登录中国铁道出版社教育资源数字化平台(https://www.tdpress.com/51eds)下载获取。
           在本书编写和修订过程中,我们参考了国内外相关领域的优秀教材、科研成果及学术论文,在此向所有给予帮助和支持的单位、个人表示最诚挚的感谢。
           尽管我们对本书进行了全面修订和反复打磨,但由于Python技术发展迅速,且编者水平有限,书中难免存在疏漏和不足之处,恳请广大读者、同行教师和专家批评指正。我们将在后续修订中不断完善,努力打造一本贴合教学、适配需求的优质Python教材。
    
           编  者
           2026 年 3 月
  • 第1章 初识Python1
    1.1 Python概述1
    1.1.1 Python发展历史1
    1.1.2 Python语言特点1
    1.1.3 Python应用领域2
    1.2 下载和安装Python3
    1.2.1 下载Python3
    1.2.2 安装Python5
    1.2.3 运行Python7
    1.3 Python集成开发环境7
    1.3.1 集成开发环境IDLE7
    1.3.2 集成开发环境PyCharm9
    【拓展阅读1】Python入门拓展学习13
    思考与练习13
    
    第2章 Python语法基础14
    2.1 Python语法特点14
    2.1.1 代码缩进14
    2.1.2 大小写敏感15
    2.1.3 注释规则15
    2.2 关键字与标识符16
    2.2.1 关键字16
    2.2.2 标识符16
    2.3 变量17
    2.4 数据类型18
    2.4.1 数字18
    2.4.2 字符串19
    2.4.3 数据类型转换19
    2.5 运算符和表达式21
    2.5.1 算术运算符和表达式21
    2.5.2 关系运算符和表达式21
    2.5.3 逻辑运算符和表达式22
    2.5.4 赋值运算符和表达式22
    2.5.5 海象运算符和表达式22
    2.5.6 成员运算符和表达式23
    2.5.7 标识运算符和表达式23
    2.5.8 运算符的优先级23
    2.6 基本输入和输出24
    2.6.1 基本输人24
    2.6.2 基本输出25
    2.7 判断语句28
    2.7.1 if语句28
    2.7.2 if...else语句28
    2.7.3 if...elif...else语句29
    2.7.4 if语句嵌套30
    2.8 循环语句32
    2.8.1 while循环语句32
    2.8.2 for循环语句32
    2.8.3 循环嵌套33
    2.9 跳转语句36
    2.9.1 break 语句36
    2.9.2 continue语句37
    2.9.3 pass语句38
    【拓展阅读2】Python编程实践39
    思考与练习39
    
    第3章 Python数据结构40
    3.1 列表40
    3.1.1 列表的创建41
    3.1.2 列表推导式41
    3.1.3 列表元素的遍历访问42
    3.1.4 多维列表与嵌套结构43
    3.1.5 列表的索引、切片与修改44
    3.1.6 列表的常用方法45
    【拓展阅读3.1】序列常用内置函数48
    【拓展阅读3.2】浅拷贝和深拷贝48
    3.2 元组48
    3.2.1 创建元组49
    3.2.2 访问元组49
    3.2.3 元组的常用操作50
    【拓展阅读3.3】元组解包52
    3.3 字典52
    3.3.1 字典的创建52
    3.3.2 字典的添加、修改和删除53
    3.3.3 字典的遍历53
    3.3.4 字典视图对象54
    3.3.5 字典的常用方法57
    3.4 集合60
    3.4.1 集合的定义与特性60
    3.4.2 集合的基本操作61
    3.4.3 集合的运算62
    【拓展阅读3.4】不可变集合64
    3.5 字符串64
    3.5.1 字符串的创建64
    3.5.2 字符串的基本操作66
    3.5.3 字符串常用方法67
    3.5.4 正则表达式73
    【拓展阅读3.5】综合实例——模拟点餐系统78
    思考与练习78
    
    第4章 Python函数80
    4.1 函数基础80
    4.1.1 函数的定义与调用80
    4.1.2 函数调用与返回值81
    4.2 函数的参数82
    4.2.1 位置参数82
    4.2.2 关键字参数83
    4.2.3 默认参数84
    4.2.4 可变参数84
    4.2.5 参数解包86
    4.2.6 函数作为参数传递89
    4.3 变量作用域90
    4.3.1 作用域类型91
    4.3.2 作用域查找规则92
    4.3.3 作用域管理关键字93
    4.4 递归函数94
    4.4.1 递归的基本结构94
    4.4.2 经典递归算法94
    4.4.3 递归与迭代的比较96
    6.3.3 读写位置的控制19
    【拓展阅读6.1】文件缓冲与刷新机制120
    6.3.4 CSV文件的读写120
    6.3.5 JSON文件的读写122
    6.4 大规模数据的读取123
    6.4.1 按行迭代读取123
    6.4.2 使用生成器读取124
    6.5 文件与目录管理125
    6.5.1 os模块的使用125
    【拓展阅读4.1】函数的注解与文档96
    【拓展阅读4.2】应用案例—学生成绩管理系统97
    思考与练习97
    
    第5章 Python异常处理机制98
    5.1 异常概述98
    5.2 异常类99
    5.3 异常的捕获和处理100
    5.3.1 异常处理基本结构101
    5.3.2 捕获多种类型的异常101
    5.3.3 通用异常类Exception104
    5.3.4 else和finally的使用105
    5.3.5 嵌套异常处理结构107
    【拓展阅读5.1】上下文管理器与异常处理108
    5.4 自定义异常108
    5.5 异常链109
    【拓展阅读5.2】程序调试中的异常应用10
    思考与练习110
    
    第6章 Python文件处理112
    6.1 文件基础112
    6.2 文件的打开与关闭114
    6.2.1 open()函数的使用114
    6.2.2 文件关闭与资源释放117
    6.3 文件的读写118
    6.3.1 文件的读取118
    6.3.2 文件的写入119
    6.3.3 读写位置的控制119
    【拓展阅读6.1】文件缓冲与刷新机制120
    6.3.4 CSV文件的读写120
    6.3.5 JSON文件的读写122
    6.4 大规模数据的读取123
    6.4.1 按行迭代读取123
    6.4.2 使用生成器读取124
    6.5 文件与目录管理125
    6.5.1 os模块的使用125
    应用147
    6.5.2 文件/目录的创建与删除127
    6.5.3 目录树的遍历128
    6.5.4 pathlib的使用129
    【拓展阅读6.2】其他文件的处理130
    思考与练习 130
    
    第7章 函数式编程131
    7.1 函数式编程概述131
    7.1.1 什么是函数式编程132
    7.1.2 函数式编程与命令式编程的对比132
    7.1.3 Python对函数式编程的支持134
    7.2 匿名函数与lambda表达式134
    7.2.1 lambda表达式的语法格式135
    7.2.2 lambda表达式的使用场景135
    7.2.3 lambda表达式与普通函数的比较136
    7.3 高阶函数136
    7.3.1 高阶函数的特性137
    7.3.2 核心高阶函数137
    7.3.3 组合函数的应用140
    7.4 函数式编程核心工具141
    7.4.1 functools模块141
    7.4.2 itertools模块141
    7.4.3 operator模块143
    7.5 闭包与作用域145
    7.5.1 闭包的定义与结构145
    7.5.2 闭包与变量绑定147
    7.5.3 闭包在函数式设计中的典型
    【拓展阅读7】装饰器、偏函数与柯里化、迭代器与生成器148
    思考与练习149
    
    第8章 面向对象编程 150
    8.1面向对象编程概述  150
    8.2类和对象   151
    8.2.1类的定义  151
    8.2.2实例化类的对象152
    8.2.3构造方法  152
    8.2.4 析构方法153
    8.3 类的属性153
    8.3.1 类属性153
    8.3.2 实例属性154
    8.4 类的方法155
    8.4.1 实例方法155
    8.4.2 类方法156
    8.4.3 静态方法157
    8.5 类成员的访问控制157
    8.5.1 公有成员157
    8.5.2 受保护成员158
    8.5.3 私有成员158
    8.6 类的继承158
    8.6.1 单继承159
    8.6.2 多继承161
    8.7 多态162
    思考与练习164
    
    第9章 模块与包165
    9.1 模块基础与导入机制165
    9.2 标准库的使用167
    9.2.1 Python标准库简介167
    9.2.2 核心标准库模块168
    9.2.3 其他常用标准库模块169
    9.3 包的结构与使用171
    9.3.1 包的基本结构171
    9.3.2 绝对导人与相对导人172
    9.3.3 命名空间包173
    9.3.4 包的发布与安装174
    9.4 模块与包的高级属性175
    9.4.1 _name__的使用175
    9.4.2 _all__的使用176
    9.4.3 模块重载177
    9.5 第三方模块与包的管理178
    9.5.1 使用pip管理第三方库178
    9.5.2 虚拟环境的创建与使用179
    【拓展阅读9.1】文件管理依赖179
    【拓展阅读9.2】模块设计与开发进阶179
    思考与练习180
    
    第10章 并发编程181
    10.1 并发编程概述181
    10.1.1 什么是并发与并行181
    10.1.2 Python中的并发模型简介183
    10.1.3 GIL(全局解释器锁)机制解析184
    10.2 多进程编程185
    10.2.1 创建进程185
    10.2.2 进程池187
    10.2.3 进程通信190
    10.2.4 进程同步193
    【拓展阅读10.1】多进程图像处理实例196
    10.3 多线程编程196
    10.3.1 创建线程196
    10.3.2 守护线程与线程池19810.3.3 线程通信19
    10.3.4 线程同步202
    【拓展阅读10.2】多线程网页爬虫实例203
    思考与练习204
    
    第11章 数据库编程205
    11.1 数据库基础205
    11.1.1 数据库简介205
    11.1.2 关系数据库206
    11.1.3 数据库的基本操作206
    11.2 Python DB-API规范208
    11.2.1 DB-API简介208
    11.2.2 核心接口对象208
    11.3 SQLite数据库编程209
    11.3.1 SQLite简介209
    11.3.2 使用sqlite3标准库210
    11.3.3 创建数据库和表212
    11.3.4 数据查询214
    11.3.5 数据更新和删除216
    【拓展阅读11】网络编程219
    思考与练习219
    
    第12章 Tkinter图形用户界面开发20
    12.1 GUI开发基础20
    12.1.1 图形用户界面概述20
    12.1.2 Tkinter简介221
    12.2 窗口与组件21
    12.2.1 窗口创建221
    12.2.2 窗口属性配置22
    12.2.3 组件概述23
    12.3 常用组件223
    12.3.1 标签组件23
    12.3.2 功能按钮226
    12.3.3 输人组件227
    12.3.4 滚动条组件28
    12.4 Tkinter布局管理器229
    12.4.1 pack方法229
    12.4.2 grid方法230
    12.4.3 place方法231
    12.5 事件处理231
    12.5.1 事件处理机制231
    12.5.2 Tkinter事件处理程序实例231
    思考与练习232
    
    第13章 数据分析实践233
    13.1 数据分析概述233
    13.1.1 数据分析的基本流程233
    13.1.2 数据分析常用工具234
    13.2 数据处理与探索235
    13.2.1 数据导入与初步了解235
    13.2.2 数据清洗与整理237
    13.2.3 数据筛选与操作239
    13.2.4 数据聚合与透视241
    13.3 数据可视化244
    13.3.1 Matplotlib基础绘图24
    13.3.2 Seaborn统计图表247
    13.3.3 数据可视化应用250
    【拓展阅读13】项目案例———电影市场分析251
    思考与练习252
    
    第14章 机器学习实践253
    14.1 机器学习概述253
    14.1.1 机器学习的概念253
    14.1.2 常见机器学习算法254
    14.1.3 机器学习的一般流程254
    14.2 使用scikit-learn库进行建模255
    14.2.1 scikit-learn库简介255
    14.2.2 数据预处理与特征工程257
    14.2.3 模型训练与预测260
    14.2.4 模型评估与选择264
    【拓展阅读14】项目案例——泰坦尼克号事件生存率预测268
    思考与练习269
    
    第15章 深度学习实践270
    15.1 神经网络概述270
    15.1.1 全连接神经网络结构270
    15.1.2 激活函数与非线性变换271
    15.1.3 损失函数与优化器271
    15.1.4 训练机制272
    15.2 环境准备274
    15.2.1 安装Python与PyTorch274
    15.2.2 检查PyTorch是否安装成功275
    15.3 PyTorch 快速入门276
    15.3.1 PyTorch的核心模块276
    15.3.2 PyTorch核心基础277
    15.3.3 Dataset与DataLoader279
    【拓展阅读15.1】项目案例——MNIST手写数字分类280
    【拓展阅读15.2】知识图谱实践280
    思考与练习280
    
    第16章 大模型应用实践282
    16.1 大模型技术概述282
    16.1.1 大模型的概念与原理282
    16.1.2 国内外主流大模型283
    16.1.3 大模型应用开发的范式转变284
    16.2 大模型应用编程核心技术284
    16.2.1 环境搭建与API配置284
    16.2.2 标准对话API的调用与调试286
    16.2.3 流式输出与多轮对话288
    16.2.4 外部知识检索与工具调用290
    【拓展阅读16】项目案例——Web智能应用开发292
    思考与练习292
  • 甘勇,博士,教授(二级),郑州工程技术学院原党委书记,从事大学计算机基础和程序设计教学,担任教育部大学计算机教学指导委员会委员,河南省计算机类专业教学指导委员会主任,河南省高等院校计算机教育研究会理事长,全国计算机基础教育研究会常务理事。荣获河南省优秀专家、河南省教学名师荣誉称号;曾获航空航天科技进步一等奖、多项河南省科技进步二等奖、中国轻工科技进步三等奖等奖励,曾获国家级教学成果二等奖、多项河南省优秀教学成果特等奖、一等奖,主持大学计算机基础国家级一流课程。主编“十二五”国家规划教材大学计算机基础,主编河南省“十四五”规划教材《大学计算机基础》和《大数据导论》,主编了《C语言程序设计》和《Python程序设计》教材,曾获河南省优秀教材特等奖和一等奖。
    
    吴怀广,教授,郑州轻工业大学,计算机科学与技术学院副院长。河南省大数据分析技术国际联合实验室负责人,主要从事软件工程、大数据数据质量,以及形式化方法的研究工作。编写《python程序设计》《C编程》等教材。主持国家重点研发计划政府间科技合作专项:SKA科学数据处理试验验证系统研制”课题—SKA关键算法在GPUGPGPU架构上计算和优化的关键技术(2016YFE0100300);主持国家自然科学基金面上项目:Bigraph反应系统中赋类与归纳类型表述及其相互关系研究(61672470);主持河南省科科技厅中外合作项目:农业大数据中的关键技术研究(162102410076);主持河南省重大公益专项项目课题:区块链系统安全关键技术研究(201300210200);主持河南省重大科技专项:超导量子芯片设计课题-基于专用超导量子芯片的应用设计与开发(221100210400)。参与国家863计划、973计划以及河南省重大专项等项目5项。发表学术论文70余篇;获得省级科技进步奖一等、二等、三等各一项。
    
    张伟伟,教授,郑州轻工业大学,计算机与人工智能学院。主讲“机器学习”“计算智能”等课程。河南省高等学校青年骨干教师,美国俄克拉荷马州立大学高级访问学者。主持和参加国家自然科学基金项目4项,科技部重点研发计划子课题2项,省部级项目6项,厅级项目5项。获河南省科技进步奖二等奖1项,三等奖2项。中国纺织工业联合会科学技术奖二等奖1项。河南省教育厅科技成果奖一等奖2项,二等奖1项。发表论文30余篇,其中中科院一区期刊论文5篇,出版教材3部,专著1部。授权国家发明专利5项、软件著作权8项。
    
    许绘香,教授,郑州工程技术学院信息工程学院。主讲“数据结构”“离散数学”“Python程序设计”等课程。河南省教育厅学术技术带头人,郑州地方高校优秀中青年骨干教师,主持和参加省科技攻关项目2项,省级教育教学改革项目2项,省级教学质量工程项目2项,主持和参加厅级项目6项,发表论文20余篇,其中SCI收录2篇,中文核心4篇,出版教材2部,专著1部。授权国家发明专利4项,软件著作权2项。
  • (1)融入新技术,新增了大模型应用、知识图谱构建等前沿内容,替换了过时案例和技术知识点,贴合当前Python技术发展趋势。
    
    (2)二是教学适配性高,优化了知识点编排,补充了更多有针对性的练习和综合实例,兼顾不同层次学习者的学习需求。
    
    (3)体例和模块创新,配套拓展阅读、思考与练习,增设综合实例模块,实现“知识点一实例一练习一拓展”的闭环学习。