Python程序设计实践教程

-
【作 者】王鹤琴 蔡正保
【I S B N 】978-7-5226-1405-2
【责任编辑】赵佳琦
【适用读者群】本专通用
【出版时间】2023-03-05
【开 本】16开
【装帧信息】平装(光膜)
【版 次】第1版第1次印刷
【页 数】256
【千字数】400
【印 张】16
【定 价】¥45
【丛 书】高等职业教育电子信息课程群系列教材
【备注信息】
简介
本书特色
前言
章节列表
精彩阅读
下载资源
相关图书
本书采用理论与实践相结合的教学方式,通俗易懂、图文并茂。从项目开发环境搭建入手,主要讲解项目开发环境搭建、Python语法基础、程序控制结构、Python序列类型、字符串、函数、面向对象程序设计、文件处理、异常处理、常用的标准库和第三方库、图形用户界面编程和数据库编程知识,并将项目分解为阶段性任务,便于学生理解和教师教学。
本书适合作为高等职业学校计算机、人工智能、信息管理、电子商务等专业的教学用书,同时也适合作为其他相关专业的选修课程教材。本书提供微课视频,并配套程序源代码、教学课件和习题答案。
结构合理:内容安排由浅入深,结构严谨,案例环环相扣,课程理论体系完善。
理实结合:为知识点同步配套相关案例练习,强化程序思维,提升综合应用能力。
资源丰富:配套微课视频、教学大纲、电子课件、案例代码等,方便师生教与学。
Python是一种解释型、面向对象的高级程序设计语言。随着人工智能、大数据时代的到来,Python已经成为数据分析、图像处理、科学计算等众多领域的首选编程语言。学习如何利用Python进行编程,是众多相关专业学生需要学习及掌握的基本技能。
Python是一款易于学习且功能强大的开放源代码的编程语言。本书以实践应用为导向,在给出了项目开发环境搭建、Python语法基础、程序控制结构等基本知识和基本操作之后,通过Python序列类型、字符串、函数、面向对象程序设计、文件处理、异常处理、常用的标准库和第三方库、图形用户界面编程和数据库编程等项目的实践案例,帮助广大读者较好地掌握相关技能和知识,构建程序设计分析思想,完成相关实践应用。
本书主要具有以下特色。
1.零基础
读者只需了解计算机的基本知识和操作,跟随本书学习即可掌握Python的编程方法。
2.强调理论与实践结合
全书包含了丰富的案例,内容基本覆盖了Python的所有知识要点。书中每个知识点都尽量安排一个短小、完整的案例,通过项目分解模块综合运用知识点,强化程序思维的培养。
3.内容编排精心设计
本书讲解的各种知识和配套案例循序渐进、环环相扣,案例选取贴近生活,有助于提高读者的学习兴趣。在每个项目后面均设有相关习题以提高读者的应用能力。
4.配套资源丰富
为方便教学,本书配套了所有案例的代码、数据,提供了课件和习题参考答案,并精心录制了每个项目的讲解视频帮助读者学习。
关于本书的教学建议如下。
周次 教学时数 教学形式(讲课、现场教学、实验、设计等) 教学内容
1 4 讲课+实验 项目1 项目开发环境搭建
2 4 讲课+实验 项目2 Python语法基础
3 4 讲课+实验 项目3 程序控制结构
4 4 讲课+实验 项目4 Python序列类型
5 4 讲课+实验
6 4 讲课+实验 项目5 字符串
7 4 讲课+实验
8 4 讲课+实验 项目6 函数
9 4 讲课+实验 项目6 函数
续表
周次 教学时数 教学形式(讲课、现场教学、实验、设计等) 教学内容
10 4 讲课+实验 项目7 面向对象程序设计
11 4 讲课+实验
12 4 讲课+实验 项目8 文件处理
13 4 讲课+实验 项目9 异常处理
14 4 讲课+实验 项目10 常用的标准库和第三方库
15 4 讲课+实验 项目11 图形用户界面编程
16 4 讲课+实验 项目12 数据库编程
17 4 实验+复习 期末复习
18 2 考核 期末考试
本书由王鹤琴、蔡正保任主编,穆红涛、李京文、朱珍元、张俊宁、芮素文和张林静任副主编。主要编写人员分工如下:王鹤琴编写项目1、项目11,席欧编写项目2,张林静编写项目3,蔡正保编写项目4、项目5,芮素文编写项目6,朱珍元编写项目7、项目10,张俊宁编写项目8、项目9,王宁编写项目12,王鹤琴、蔡正保、穆红涛、李京文负责全书的统稿、修改、定稿工作。参与本书编写工作的还有胡凌云、汪炜玮、宋清林、马慧、周丰杰等。中国水利水电出版社的有关负责同志对本书的出版给予了大力支持,在本书的策划和编写过程中,提出了很好的建议,特别是对编写方式及案例的策划,使本书能够更好地用于教学,在此表示感谢。本书的出版得到了安徽省2022年高校学科(专业)拔尖人才学术资助项目(项目编号:gxbjZD2022147)的资助。读者可登录“万水书苑”(http://www.wsbookshow.com/)下载书中配套的所有程序源代码、案例数据、教学课件、习题答案、课程视频。
由于时间仓促,书中难免存在疏漏和不足之处,恳请广大读者批评指正。
安徽警官职业学院 王鹤琴
2022年7月
1.1 项目引导 1
1.2 技术准备 1
1.2.1 Python的诞生与发展 1
1.2.2 Python的特点 2
1.2.3 Python的应用领域 4
1.2.4 Python开发环境的搭建 5
1.2.5 Python第三方开发工具 5
1.3 项目分解 5
任务1:安装Python开发环境 5
任务2:编写交互式代码 6
任务3:运行程序文件 7
任务4:使用IDLE编写代码 7
任务5:搭建Python集成开发环境 9
1.4 项目总结 11
1.5 习题 11
项目2 Python语法基础 12
2.1 项目引导 12
2.2 技术准备 12
2.2.1 关键字和标识符 12
2.2.2 变量和常量 13
2.2.3 基本数据类型 15
2.2.4 运算符与表达式 21
2.2.5 运算符的优先级 23
2.3 项目分解 24
任务1:实例讲解关键字 24
任务2:实例讲解整数和浮点数 24
任务3:浮点数运算误差详解 25
任务4:实例讲解常用字符串函数的作用
及其操作 26
任务5:实例讲解算术运算符和表达式 27
任务6:实例讲解比较运算符和表达式 27
任务7:实例讲解赋值运算符和表达式 28
任务8:实例讲解逻辑运算符和表达式 29
任务9:实例讲解运算符的优先级 29
2.4 项目总结 30
2.5 习题 30
项目3 程序控制结构 32
3.1 项目引导 32
3.2 技术准备 33
3.2.1 顺序结构 33
3.2.2 选择结构 33
3.2.3 循环结构 37
3.3 项目分解 43
任务1:实例讲解if-else语句 43
任务2:实例讲解if-elif-else语句 43
任务3:实例讲解if嵌套语句 44
任务4:实例讲解while语句 45
任务5:实例讲解for语句 45
任务6:实例讲解循环嵌套 46
任务7:实例讲解break语句和
continue语句 47
任务8:实例讲解pass语句 47
任务9:猜字谜游戏 48
任务10:利用蒙特卡罗方法计算圆周率 48
3.4 项目总结 50
3.5 习题 50
项目4 Python序列类型 52
4.1 项目引导 52
4.2 技术准备 53
4.2.1 列表 53
4.2.2 元组 58
4.2.3 字典 61
4.2.4 集合 65
4.2.5 列表、元组、字典和集合的区别 67
4.3 项目分解 67
任务1:实例讲解列表 67
任务2:实例讲解添加、删除、修改
列表元素 68
任务3:实例讲解列表的统计和排序 69
任务4:实例讲解列表的切片 70
任务5:实例讲解元组 70
任务6:实例讲解元组的常用内置函数 71
任务7:实例讲解字典 71
任务8:实例讲解添加、删除、修改
字典元素 72
任务9:实例讲解集合 73
任务10:实例讲解集合的并集、交集
与差集 74
4.4 项目总结 74
4.5 习题 75
项目5 字符串 77
5.1 项目引导 77
5.2 技术准备 78
5.2.1 字符串的声明和拼接 78
5.2.2 字符串的索引和切片 79
5.2.3 字符转义 81
5.2.4 格式化字符串 82
5.2.5 字符串的输入 83
5.2.6 字符串的内建函数 84
5.3 项目分解 90
任务1:实例讲解字符串的声明和拼接 90
任务2:实例讲解字符转义 90
任务3:实例讲解字符串的格式化 90
任务4:实例讲解字符串的常用操作 91
5.4 项目总结 92
5.5 习题 92
项目6 函数 94
6.1 项目引导 94
6.2 技术准备 94
6.2.1 函数的创建和调用 94
6.2.2 参数传递 95
6.2.3 返回值 100
6.2.4 变量的作用域 101
6.2.5 匿名函数 103
6.2.6 嵌套函数 104
6.3 项目分解 106
任务1:实例讲解使用函数完成
累加操作 106
任务2:实例讲解使用函数完成指定
数据的输出 107
任务3:实例讲解通过函数解决
鬼谷算题 107
任务4:实例讲解通过函数实现学生信息
管理系统 108
6.4 项目总结 111
6.5 习题 111
项目7 面向对象程序设计 113
7.1 项目引导 113
7.2 技术准备 113
7.2.1 设计思想 113
7.2.2 设计优点 114
7.2.3 设计缺点 115
7.2.4 基本特性 115
7.2.5 类与对象 116
7.2.6 类的定义和实例化 117
7.2.7 类属性与实例属性 119
7.2.8 方法 121
7.2.9 成员的可见性 122
7.2.10 继承 124
7.2.11 多态 125
7.3 项目分解 126
任务1:实例讲解类 126
任务2:实例讲解创建实例化对象 128
任务3:实例讲解类属性 130
任务4:实例讲解实例属性 131
任务5:实例讲解定义实例方法 132
任务6:实例讲解定义类方法 133
任务7:实例讲解定义静态方法 133
任务8:实例讲解成员的可见性 135
任务9:实例讲解继承 136
任务10:实例讲解多态 137
任务11:实例讲解面向对象编程的
综合应用 139
7.4 项目总结 141
7.5 习题 141
项目8 文件处理 144
8.1 项目引导 144
8.2 技术准备 144
8.2.1 文件基础知识 144
8.2.2 文件基本操作 146
8.2.3 文件的读写操作 149
8.2.4 目录基本操作 155
8.3 项目分解 158
任务1:创建文件和打开文件 158
任务2:实现文件内容的读取 159
任务3:实现文件内容的写入 160
任务4:实现当前目录的获取与转移到
指定目录 160
任务5:实现目录的新建 161
任务6:实现目录的删除与内容显示 162
8.4 项目总结 163
8.5 习题 163
项目9 异常处理 165
9.1 项目引导 165
9.2 技术准备 165
9.2.1 异常的概念 165
9.2.2 异常的处理 166
9.2.3 抛出异常 170
9.2.4 用户自定义异常类 172
9.2.5 预定义清理行为 173
9.3 项目分解 174
任务1:运用try/except捕获异常 174
任务2:运用try/except-else捕获异常 174
任务3:运用try/except-finally捕获异常 175
任务4:运用try/except-else-finally
捕获异常 176
任务5:运用raise语句抛出异常 176
任务6:运用用户自定义异常类捕获
异常 176
任务7:运用预定义清理行为 177
9.4 项目总结 178
9.5 习题 178
项目10 常用的标准库和第三方库 180
10.1 项目引导 180
10.2 技术准备 180
10.2.1 turtle库 180
10.2.2 random库 182
10.2.3 time库 184
10.2.4 NumPy库 185
10.2.5 Matplotlib库 191
10.2.6 jieba库 195
10.2.7 wordcloud库 197
10.2.8 PIL库 199
10.3 项目分解 203
任务1:实例讲解画一棵樱花树 203
任务2:实例讲解矩阵的乘法运算 205
任务3:实例讲解绘制基本图表 205
任务4:《三国演义》人物出场统计 207
任务5:《三国演义》人物出场词云图 208
10.4 项目总结 210
10.5 习题 210
项目11 图形用户界面编程 213
11.1 项目引导 213
11.2 技术准备 213
11.2.1 tkinter概述 213
11.2.2 创建窗口 214
11.2.3 标签(Label)组件 215
11.2.4 显示图片 216
11.2.5 按钮(Button)组件 217
11.2.6 输入框(Entry)组件 218
11.2.7 文本框(Text)组件 218
11.2.8 复选框(Checkbutton)组件 220
11.2.9 单选按钮(Radiobutton)组件 220
11.2.10 列表框(Listbox)组件 221
11.2.11 消息窗口(tkMessageBox) 222
11.2.12 布局管理 222
11.2.13 事件处理 223
11.3 项目分解 223
任务1:实现用户注册界面 223
任务2:实现用户登录界面 225
任务3:实现社区生活调查界面 226
任务4:实现用户留言板界面 227
11.4 项目总结 229
11.5 习题 229
项目12 数据库编程 230
12.1 项目引导 230
12.2 技术准备 231
12.2.1 数据库概述 231
12.2.2 关系型数据库 231
12.2.3 关系型数据库语言SQL 232
12.2.4 Python DB-API规范 233
12.2.5 数据库编程的一般过程 236
12.3 项目分解 237
任务1:数据库的安装与配置 237
任务2:安装PyMySQL库 240
任务3:数据库操作—创建数据库 241
任务4:数据库操作—数据库连接 242
任务5:数据库操作—数据库插入 243
任务6:数据库操作—数据库查询 243
任务7:数据库操作—数据库更新 244
任务8:数据库操作—数据库删除 245
12.4 项目总结 246
12.5 习题 246
参考文献 248
- 零基础玩转国产大模型DeepSeek [徐永冰 张帅 编著]
- 网络工程师5天修炼(适配第6版考纲) [主编 朱小平 施游]
- 信息系统项目管理师考试32小时通关(适用第4版考纲) [薛大龙]
- 信息系统管理工程师考试32小时通关(适配第2版考纲) [薛大龙 刘伟]
- 土木工程材料检测实训 [洪晓江 达则晓丽 钱波]
- 科技信息检索与论文写作实用教程 [李振华]
- 传统山水画论解读与实践 [陈钠 著]
- Python数据库编程 [主编 殷树友 邢 翀]
- 计算机基础实训指导 [主编 袁春萍 朱妮]
- 嵌入式人工智能技术应用(数字教材) [主编 胡娜 杨国勇 晏廷荣]
- Vienna整流器技术 [桂存兵 著]
- 变频器与伺服应用 [陈刚 叶云飞]
- 物联网工程设计与实践 [汤琳 李敏]
- 炉边夜话——深入浅出话AI [汪建 著]
- 电商运营与管理 [钟肖英 陈潇]
- Java面向对象程序设计 [主编 姜春磊 陈虹洁]
- 信息技术基础(Windows 10+WPS Office)(微课版) [主编 石利平 田辉平 谢盛嘉]
- 人工智能应用 [主编 陈 萍 刘培培 陈孟军]
- 大学生职业发展与就业指导 [主编 刘志坚]
- 高级办公应用项目教程 [主编 屈晶 赵成丽]
- 微信小程序开发项目实战(微课版) [主编 黄龙泉 郭峰 朱倩]
- 企业档案工作实战宝典百问百答 [华俊 卢秀英 邵甜甜 著]
- 计算机网络原理及应用 [主编 唐继勇 叶坤 孙梦娜]
- 大学生创业基础 [主编 王丽莉 王 杨]
- 船舶辅机 [主编 王连海 于洋 姜淑翠]
- 大学生就业指导 [主编 王丽莉 董宴廷]
- 系统架构设计师章节习题与考点特训 [主编 薛大龙 邹月平]
- 高校学生工作探索与实践 [郭亮 著]
- 大学生情商管理 [方雄 著]
- 2023年长沙市会展业发展报告 [主编 周栋良]