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)


相关推荐

  • Servlet和JSP的交互方式[通俗易懂]

    Servlet和JSP的交互方式[通俗易懂]文章目录Servlet和JSP的交互方式Servlet:jsp:1.表单:2.超链接超链接3.forward:获取参数值request.getParameter(“id”)处理乱码newString(request.getParameter(“name”).getBytes(“ISO8859_1″),”UTF-8”)Servlet和JSP的交互方式Servlet:1.request.getRequestDispatcher(“url”).forward(requsest,response);这个是

  • 【最佳网页宽度及其实现】「建议收藏」

    1.设计网页的时候,确定宽度是一件很苦恼的事。以minifun…

  • spss交叉表分析 + SPSS卡方检验

    spss交叉表分析 + SPSS卡方检验spss中交叉分析主要用来检验两个变量之间是否存在关系,或者说是否独立,其零假设为两个变量之间没有关系。在实际工作中,经常用交叉表来分析比例是否相等。例如分析不同的性别对不同的报纸的选择有什么不同。spss交叉表分析方法与步骤: 1、在spss中打开数据,然后依次打开:analyze–descriptive–crosstabs,打开交叉表对话框 2、将性别放到行列表,将

  • TransactionScope事务处理

    TransactionScope事务处理在我们日常开发的时候,有时候程序需要使用到事务,就比如,我们日常最熟悉的一个流程,那么就是银行的取款,当用户从ATM机器选择取款1000元的时候,恰巧这个时候如果停电,如果没有事务那么将会出现不堪设想的后果,银行都会倒闭。最近在开发一个功能,需要根据单据的信息生成2张单据,要么全部保存,要么都保存失败,做到事务的一致性、原子性,一开始我想到的是SQL和存储过程级别的事务,但是好像按照当前的系统的业务逻辑,这个方法的底层还是拼接SQL语句,后面又想着使用C#的ADO.NET级别的事务,根据数据生成sql,但

  • android checkbox是否选中,Android 中如何处理checkbox的选中、未选中

    android checkbox是否选中,Android 中如何处理checkbox的选中、未选中xml页面布局android:orientation=”vertical”android:layout_width=”fill_parent”android:layout_height=”fill_parent”>android:text=”Plain”android:layout_width=”wrap_content”android:layout_height=”wrap_content…

  • linux常用命令50个_docmd常用命令详解

    linux常用命令50个_docmd常用命令详解1. find基本语法参数如下:find[PATH][option][action]#与时间有关的参数:-mtimen:n为数字,意思为在n天之前的“一天内”被更改过的

发表回复

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

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