python精彩编程200例 pdf-Python程序设计 第3版pdf「建议收藏」

Python程序设计第3版内容简介《Python程序设计第3版》是面向大学计算机科学专业的教材。本书以Python语言为工具,采用相当传统的方法,强调解决问题、设计和编程是计算机科学的核心技能。全书共13章,此外,还包含两个附录。第1章到第5章介绍计算机与程序、编写简单程序、数字计算、对象和图形、字符串处理等基础知识。第6章到第8章介绍函数、判断结构、循环结构和布尔值等话题。第9章到第1…

大家好,又见面了,我是你们的朋友全栈君。

Python程序设计 第3版 内容简介

《Python程序设计 第3版》是面向大学计算机科学专业的教材。本书以Python语言为工具,采用相当传统的方法,强调解决问题、设计和编程是计算机科学的核心技能。

全书共13章,此外,还包含两个附录。第 1章到第5章介绍计算机与程序、编写简单程序、数字计算、对象和图形、字符串处理等基础知识。第6章到第8章介绍函数、判断结构、循环结构和布尔值等话题。第9章到第 13章着重介绍一些较为高档的程序设计方法,包括模拟与设计、类、数据集合、面向对象设计、算法设计与递归等。附录部分给出了Python快速参考和术语表。每一章的末尾配有丰富的练习,包括复习问题、讨论和编程联系等多种形式,帮助读者巩固该章的知识和技能。

《Python程序设计 第3版》特色鲜明、示例生动有趣、内容易读易学,适合Python入门程序员阅读,也适合高校计算机专业的教师和学生参考。

Python程序设计 第3版 目录

第 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:使用Python 148

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 设计simNGames 183

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 创建ShotTracker 218

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 实现SimStats 265

12.2.3 实现RBallGame 266

12.2.4 实现Player 267

12.2.5 完整程序 268

12.3 案例研究:骰子扑克 270

12.3.1 程序规格说明 271

12.3.2 识别候选对象 271

12.3.3 实现模型 272

12.3.4 基于文本的UI 275

12.3.5 开发GUI 277

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

Python程序设计 第3版 精彩文摘

1.1 通用机器

几乎每个人都用过计算机。也许你玩过计算机游戏,或曾用计算机写文章、在线购物、听音乐,或通过社交媒体与朋友联系。计算机被用于预测天气、设计飞机、制作电影、经营企业、完成金融交易和控制工厂等。

你是否停下来想过,计算机到底是什么?一个设备如何能执行这么多不同的任务?学习计算机和计算机编程就从这些基本问题开始。

现代计算机可以被定义为”在可改变的程序的控制下,存储和操纵信息的机器”。该定义有两个关键要素。第一,计算机是用于操纵信息的设备。这意味着我们可以将信息放入计算机,它可以将信息转换为新的、有用的形式,然后输出或显示信息,让我们解释。

第二,计算机不是唯一能操纵信息的机器。当你用简单的计算器来加一组数字时,就在输入信息(数字),计算器就在处理信息,计算连续的总和,然后显示。另一个简单的例子是油泵。给油箱加油时,油泵利用某些输入:当前每升汽油的价格和来自传感器的信号,读取汽油流入汽车油箱的速率。油泵将这个输入转换为加了多少汽油和应付多少钱的信息。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/125875.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • Java课设–学生成绩管理系统一

    Java课设–学生成绩管理系统一写在前面这个项目是Java课程的课设,一共花了5天的时间去完成它,在这期间感谢一些博主的帮助,让我了解到了一些新的技术知识,所以打算写这一系列博客来介绍一整个课设项目,也为了帮助之后的人,如有错误,请联系我。为了更好的让读者了解到整个项目的设计流程,我将项目拆分成几个部分来就行解说,这一小节是一个总述,主要介绍课设的整个框架和最终效果,代码我会放到后面的github链接上,欢迎大家star。如果有一些参考没有加上联系,希望大家可以联系我,因为写的时候查的比较快,没有记录到博主的链接,敬请谅解!!!一、

  • 3D视频编码(3d打印技术介绍)

    3D-HEVC编码框架3D-HEVC编码结构是对HEVC的扩展,每个视点纹理及深度图编码主要采用HEVC编码框架,但在其基础上增加了一些新的编码技术,使其更有利于深度图和多视点的编码。图13D-HEVC编码结构如上图所示,3D-HEVC编解码结构和MVC类似。图中所有输入的视频图像和深度图像是同一时刻,不同拍摄位置的场景,这些图像组成一个存取层。在同一个存取层中,首先对独立视点(基准视点…

  • A股管家股票自动交易软件系统,功能完善强大[通俗易懂]

    A股管家股票自动交易软件系统,功能完善强大[通俗易懂]                                    2013年的时候,有个广东的朋友说再用这款A股管家股票自动系统,我当时比较惊讶,以前想过要是有一款股票自动交易软件能偶尔代替我一下就好了,虽然是职业股民,但也经常遇到太忙的时候,实在没时间。然后就在朋友的推荐下,弄了一套试试,印象非常深刻,当天设了600…

  • 安装师傅最好的接单平台_安装sql server2008

    安装师傅最好的接单平台_安装sql server2008直接使用下载的.exe文件安装总是得到以下错误:“afatalerroroccurredduringinstallation失败的对象初始化…” 使了好多办法,最终采用以下blog中的方法解决: http://bidn.com/blogs/bretupdegraff/bidn-blog/223/hacking-the-sql-server-2008-r2-a…

  • drone无人机操作_无人机怎么平稳降落

    drone无人机操作_无人机怎么平稳降落本文基于dronekit在实体无人机上实现最基本的起飞和降落,测试了这一过程中速度的变化以及起落位置的偏移。

  • php开发工程师面试题知识点总结(二)–基础篇

    php开发工程师面试题知识点总结(二)–基础篇

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号