当前位置:主页 > 书籍配套资源 > Python配套资源
《Python程序设计(第3版)》教学PPT

《Python程序设计(第3版)》教学PPT

  • 更新:2021-10-23
  • 大小:5 MB
  • 类别:Python
  • 作者:[美]、约翰·策勒、(John、Zell
  • 出版:人民邮电出版社
  • 格式:PDF

  • 资源介绍
  • 相关推荐

编辑推荐

本书具有以下特点:● 广泛使用计算机图形学——本书提供一个简单的图形软件包graphics.py作为示例。● 生动有趣的例子——本书包含了完整的编程示例来解决实际问题。● 亲切自然的行文——以自然的叙事风格介绍了重要的计算机科学概念。● 灵活的螺旋式学习过程——简单地呈现概念,逐渐介绍新的思想,章节末加以巩固强化。● 时机恰好地介绍对象——本书既不是严格的“早讲对象”,也不是“晚讲对象”,而是在命令式编程的基础上简要地介绍了对象概念。● 提供丰富的教学素材——提供了大量的章末习题。还提供代码示例和教学PPT下载。本书以Python语言为工具教授计算机程序设计。本书强调解决问题、设计和编程是计算机科学的核心技能。本书特色鲜明、示例生动有趣、内容易读易学,适合Python入门程序员阅读,也适合高校计算机专业的教师和学生参考。访问异步社区(www.epubit.com.cn)的本书页面,可下载本书示例代码、习题解答和教学PPT。作者简介John Zelle是美国Wartburg大学数学和计算机系教授。他负责教授Python程序设计课程,并且结合多年的教学经验编写了本书,在美国高校受到普遍的欢迎。他还从事VR、AI等方面的研究,发表了一些机器学习方面的论文。

内容简介

《Python程序设计 第3版》是面向大学计算机科学专业的教材。本书以Python语言为工具,采用相当传统的方法,强调解决问题、设计和编程是计算机科学的核心技能。全书共13章,此外,还包含两个附录。第 1章到第5章介绍计算机与程序、编写简单程序、数字计算、对象和图形、字符串处理等基础知识。第6章到第8章介绍函数、判断结构、循环结构和布尔值等话题。第9章到第 13章着重介绍一些较为高档的程序设计方法,包括模拟与设计、类、数据集合、面向对象设计、算法设计与递归等。附录部分给出了Python快速参考和术语表。每一章的末尾配有丰富的练习,包括复习问题、讨论和编程联系等多种形式,帮助读者巩固该章的知识和技能。《Python程序设计 第3版》特色鲜明、示例生动有趣、内容易读易学,适合Python入门程序员阅读,也适合高校计算机专业的教师和学生参考。

作者简介

John Zelle是美国Wartburg大学数学和计算机系教授。他负责教授Python程序设计课程,并且结合多年的教学经验编写了本书,在美国高校受到普遍的欢迎。他还从事VR、AI等方面的研究,发表了一些机器学习方面的论文。

目录

  • 第 1章 计算机和程序1
  • 学习目标1
  • 1.1 通用机器1
  • 1.2 程序的力量2
  • 1.3 什么是计算机科学2
  • 1.4 硬件基础3
  • 1.5 编程语言4
  • 1.6 Python的“魔法”6
  • 1.7 Python程序内部10
  • 1.8 混沌与计算机12
  • 1.9 小结13
  • 1.10 练习14
  • 复习问题14
  • 第 2章 编写简单程序17
  • 学习目标17
  • 2.1 软件开发过程17
  • 2.2 示例程序:温度转换器18
  • 2.3 程序要素19
  • 2.3.1 名称19
  • 2.3.2 表达式20
  • 2.4 输出语句22
  • 2.5 赋值语句23
  • 2.5.1 简单赋值23
  • 2.5.2 赋值输入24
  • 2.5.3 同时赋值26
  • 2.6 确定循环27
  • 2.7 示例程序:终值29
  • 2.8 小结31
  • 2.9 练习32
  • 复习问题32
  • 第3章 数字计算35
  • 学习目标35
  • 3.1 数值数据类型35
  • 3.2 类型转换和舍入38
  • 3.3 使用math库40
  • 3.4 累积结果:阶乘42
  • 3.5 计算机算术的局限性44
  • 3.6 小结46
  • 3.7 练习47
  • 复习问题47
  • 第4章 对象和图形52
  • 学习目标52
  • 4.1 概述52
  • 4.2 对象的目标53
  • 4.3 简单图形编程53
  • 4.4 使用图形对象56
  • 4.5 绘制终值60
  • 4.6 选择坐标64
  • 4.7 交互式图形66
  • 4.7.1 获取鼠标点击67
  • 4.7.2 处理文本输入68
  • 4.8 graphics模块参考70
  • 4.8.1 GraphWin对象70
  • 4.8.2 图形对象71
  • 4.8.3 Entry对象74
  • 4.8.4 显示图像74
  • 4.8.5 生成颜色75
  • 4.8.6 控制显示更新(高档)75
  • 4.9 小结76
  • 4.10 练习76
  • 复习问题76
  • 第5章 序列:字符串、列表和文件81
  • 学习目标81
  • 5.1 字符串数据类型81
  • 5.2 简单字符串处理84
  • 5.3 列表作为序列86
  • 5.4 字符串表示和消息编码87
  • 5.4.1 字符串表示87
  • 5.4.2 编写编码器88
  • 5.5 字符串方法89
  • 5.5.1 编写解码器89
  • 5.5.2 更多字符串方法92
  • 5.6 列表也有方法93
  • 5.7 从编码到加密94
  • 5.8 输入/输出作为字符串操作95
  • 5.8.1 示例应用程序:
  • 日期转换95
  • 5.8.2 字符串格式化97
  • 5.8.3 更好的零钱计数器99
  • 5.9 文件处理99
  • 5.9.1 多行字符串100
  • 5.9.2 文件处理100
  • 5.9.3 示例程序:批处理
  • 用户名103
  • 5.9.4 文件对话框(可选)103
  • 5.10 小结105
  • 5.11 练习106
  • 复习问题106
  • 第6章 定义函数111
  • 学习目标111
  • 6.1 函数的功能111
  • 6.2 函数的非正式讨论112
  • 6.3 带有函数的终值程序115
  • 6.4 函数和参数:令人兴奋的
  • 细节116
  • 6.5 返回值的函数119
  • 6.6 修改参数的函数122
  • 6.7 函数和程序结构126
  • 6.8 小结128
  • 6.9 练习129
  • 复习问题129
  • 第7章 判断结构133
  • 学习目标133
  • 7.1 简单判断133
  • 7.1.1 示例:温度警告133
  • 7.1.2 形成简单条件135
  • 7.1.3 示例:条件程序执行136
  • 7.2 两路判断137
  • 7.3 多路判断140
  • 7.4 异常处理142
  • 7.5 设计研究:三者大144
  • 7.5.1 策略1:比较每个值和
  • 所有其他值145
  • 7.5.2 策略2:判断树146
  • 7.5.3 策略3:顺序处理147
  • 7.5.4 策略4:使用Python148
  • 7.5.5 一些经验148
  • 7.6 小结149
  • 7.7 练习149
  • 复习问题149
  • 第8章 循环结构和布尔值153
  • 学习目标153
  • 8.1 for循环:快速回顾153
  • 8.2 不定循环154
  • 8.3 常见循环模式155
  • 8.3.1 交互式循环155
  • 8.3.2 哨兵循环156
  • 8.3.3 文件循环158
  • 8.3.4 嵌套循环160
  • 8.4 布尔值计算161
  • 8.4.1 布尔运算符161
  • 8.4.2 布尔代数163
  • 8.5 其他常见结构165
  • 8.5.1 后测试循环165
  • 8.5.2 循环加一半166
  • 8.5.3 布尔表达式作为判断166
  • 8.6 示例:一个简单的事件循环169
  • 8.7 小结172
  • 8.8 练习173
  • 复习问题173
  • 第9章 模拟与设计177
  • 学习目标177
  • 9.1 模拟短柄壁球177
  • 9.1.1 一个模拟问题177
  • 9.1.2 分析与规格说明178
  • 9.2 伪随机数178
  • 9.3 自顶向下的设计180
  • 9.3.1 顶层设计180
  • 9.3.2 关注点分离182
  • 9.3.3 第 二层设计182
  • 9.3.4 设计simNGames183
  • 9.3.5 第三层设计184
  • 9.3.6 整理完成186
  • 9.3.7 设计过程总结188
  • 9.4 自底向上的实现188
  • 9.4.1 单元测试188
  • 9.4.2 模拟结果189
  • 9.5 其他设计技术190
  • 9.5.1 原型与螺旋式开发190
  • 9.5.2 设计的艺术191
  • 9.6 小结191
  • 9.7 练习192
  • 复习问题192
  • 第 10章 定义类196
  • 学习目标196
  • 10.1 对象的快速复习196
  • 10.2 示例程序:炮弹197
  • 10.2.1 程序规格说明197
  • 10.2.2 设计程序197
  • 10.2.3 程序模块化199
  • 10.3 定义新类200
  • 10.3.1 示例:多面骰子201
  • 10.3.2 示例:Projectile类203
  • 10.4 用类数据处理205
  • 10.5 对象和封装207
  • 10.5.1 封装有用的抽象207
  • 10.5.2 将类放在模块中208
  • 10.5.3 模块文档208
  • 10.5.4 使用多个模块210
  • 10.6 控件210
  • 10.6.1 示例程序:掷骰
  • 子程序211
  • 10.6.2 创建按钮211
  • 10.6.3 构建骰子类213
  • 10.6.4 主程序215
  • 10.7 动画炮弹216
  • 10.7.1 绘制动画窗口217
  • 10.7.2 创建ShotTracker218
  • 10.7.3 创建输入对话框219
  • 10.7.4 主事件循环220
  • 10.8 小结221
  • 10.9 练习222
  • 复习问题222
  • 第 11章 数据集合227
  • 学习目标227
  • 11.1 示例问题:简单统计227
  • 11.2 应用列表228
  • 11.2.1 列表和数组229
  • 11.2.2 列表操作229
  • 11.2.3 用列表进行统计231
  • 11.3 记录的列表235
  • 11.4 用列表和类设计237
  • 11.5 案例分析:Python计算器241
  • 11.5.1 计算器作为对象241
  • 11.5.2 构建界面241
  • 11.5.3 处理按钮243
  • 11.6 案例研究:更好的炮弹动画246
  • 11.6.1 创建发射器246
  • 11.6.2 追踪多次射击248
  • 11.7 无顺序集合251
  • 11.7.1 字典基础251
  • 11.7.2 字典操作252
  • 11.7.3 示例程序:词频253
  • 11.8 小结257
  • 11.9 练习257
  • 复习问题257
  • 第 12章 面向对象设计262
  • 学习目标262
  • 12.1 OOD的过程262
  • 12.2 案例研究:壁球模拟263
  • 12.2.1 候选对象和方法264
  • 12.2.2 实现SimStats265
  • 12.2.3 实现RBallGame266
  • 12.2.4 实现Player267
  • 12.2.5 完整程序268
  • 12.3 案例研究:骰子扑克270
  • 12.3.1 程序规格说明271
  • 12.3.2 识别候选对象271
  • 12.3.3 实现模型272
  • 12.3.4 基于文本的UI275
  • 12.3.5 开发GUI277
  • 12.4 OO概念282
  • 12.4.1 封装282
  • 12.4.2 多态283
  • 12.4.3 继承283
  • 12.5 小结284
  • 12.6 练习285
  • 复习问题285
  • 第 13章 算法设计与递归287
  • 学习目标287
  • 13.1 查找287
  • 13.1.1 简单的查找问题287
  • 13.1.2 策略1:线性查找288
  • 13.1.3 策略2:二分查找288
  • 13.1.4 比较算法289
  • 13.2 递归问题解决290
  • 13.2.1 递归定义291
  • 13.2.2 递归函数292
  • 13.2.3 示例:字符串反转293
  • 13.2.4 示例:重组词294
  • 13.2.5 示例:快速指数295
  • 13.2.6 示例:二分查找296
  • 13.2.7 递归与迭代296
  • 13.3 排序算法298
  • 13.3.1 天真的排序:选择
  • 排序298
  • 13.3.2 分而治之:归并排序299
  • 13.3.3 排序比较301
  • 13.4 难题303
  • 13.4.1 汉诺依塔303
  • 13.4.2 停机问题306
  • 13.4.3 结论308
  • 13.5 小结308
  • 13.6 练习309
  • 复习问题309
  • 附录A Python快速参考314
  • 附录B 术语表323

资源下载

资源下载地址1:https://box.lenovo.com/l/d5wkUf

网友留言