资源详情

Python程序设计与算法思维

Python程序设计与算法思维-电子书下载


作者: [美] 斯图尔特·李杰斯 马蒂·斯特普
出版社: 机械工业出版社
出版年: 2020-6
装帧: 平装
丛书: 计算机科学丛书
ISBN: 9787111655145

下载次数:9


本站推荐

书籍资料

  • 内容简介
  • 作者介绍
  • 书籍目录

本书作者在构建Python程序的过程中,将经过证明的、做过类测试的、回归基本的策略首次引入到Python程序设计教学中。本书以聚焦问题解决的分层渐进方法介绍了编程的基本原理,并在各个章节增加了新的语法和概念,以及展示了好的编程风格应该是什么样的,分阶段开发了一个复杂的程序。本书关注的是问题的解决,强调算法思维。

出版者的话
译者序
前言
第1章 Python编程简介1
1.1 计算的基本概念1
1.1.1 为何编程1
1.1.2 硬件和软件2
1.1.3 数字领域3
1.1.4 编程的过程4
1.1.5 为何选择Python5
1.1.6 Python编程环境6
1.2 一个完整的Python程序7
1.2.1 打印输出9
1.2.2 字符串文字(字符串)9
1.2.3 转义序列10
1.2.4 打印复杂图形11
1.2.5 注释、空白和可读性12
1.3 程序错误14
1.3.1 语法错误15
1.3.2 逻辑错误17
1.4 程序分解17
1.4.1 函数18
1.4.2 控制流21
1.4.3 标识符和关键字23
1.4.4 调用其他函数的函数24
1.4.5 运行时错误的例子26
1.5 案例研究:绘图27
1.5.1 结构化版本27
1.5.2 没有冗余的终版本29
1.5.3 执行流

析30
本章小结31
自测题32
习题35
编程项目39
第2章 数据和确定循环40
2.1 基本数据概念40
2.1.1 数据类型40
2.1.2 表达式41
2.1.3 字面量43
2.1.4 算术运算符44
2.1.5 运算优先级46
2.1.6 混合和转换类型48
2.2 变量49
2.2.1 使用变量的程序52
2.2.2 自增/自减运算符56
2.2.3 打印多个值57
2.3 for循环59
2.3.1 使用循环变量62
2.3.2 关于循环范围的细节64
2.3.3 字符串乘法与打印部分行67
2.3.4 嵌套for循环70
2.4 管理复杂性72
2.4.1 作用域72
2.4.2 伪代码74
2.4.3 常量78
2.5 案例研究:沙漏图80
2.5.1 问题分解和伪代码81
2.5.2 初始结构化版本83
2.5.3 增加一个常量84
本章小结86
自测题86
习题91
编程项目94
第3章 参数与图形98
3.1 参数98
3.1.1 参数的机制103
3.1.2 参数的限制105
3.1.3 多个参数107
3.1.4 参数与常量110
3.1.5 可选参数110
3.2 返回值111
3.2.1 math模块113
3.2.2 random模块116
3.2.3 定义返回值的函数119
3.2.4 返回多个值123
3.3 交互式程序124
3.4 图形128
3.4.1 DrawingPanel简介129
3.4.2 画线和形状131
3.4.3 颜色133
3.4.4 使用循环画图137
3.4.5 文本与字体139
3.4.6 图像141
3.4.7 画图过程分解141
3.5 案例研究:抛射轨迹144
3.5.1 非结构化解决方案146
3.5.2 结构化解决方案148
3.5.3 图形版本150
本章小结153
自测题153
习题158
编程项目164
第4章 条件执行166
4.1 if/else语句166
4.1.1 关系运算符168
4.1.2 if/else语句嵌套170
4.1.3 if/else语句分解174
4.1.4 多个判别条件176
4.2 累积算法176
4.2.1 累积求和176
4.2.2 求小/值循环178
4.2.3 使用if语句的累积求和181
4.2.4 舍入误差183
4.3 函数中的条件执行185
4.3.1 前置条件和后置条件185
4.3.2 抛出异常186
4.3.3 回顾返回值189
4.3.4 分支选择推理191
4.4 字符串193
4.4.1 字符串方法194
4.4.2 按索引访问字符196
4.4.3 字母和数值之间的转换200
4.4.4 累积文本算法202
4.5 案例研究:基础代谢率203
4.5.1 单人非结构化BMR解决方案204
4.5.2 双人非结构化BMR解决方案207
4.5.3 双人结构化BMR解决方案209
4.5.4 过程式设计启发式212
本章小结216
自测题216
习题221
编程项目223
第5章 程序逻辑与不确定循环224
5.1 while循环224
5.1.1 寻找小因数的循环226
5.1.2 循环的启动227
5.2 栅栏算法230
5.2.1 带if语句的栅栏循环232
5.2.2 哨兵循环234
5.2.3 带小/值的哨兵循环236
5.3 布尔逻辑238
5.3.1 逻辑运算符239
5.3.2 布尔变量与标志241
5.3.3 谓词函数243
5.3.4 布尔Zen245
5.3.5 短路求值248
5.4 健壮的程序251
5.4.1 try/except语句252
5.4.2 处理用户错误255
5.5 断言与程序逻辑256
5.5.1 针对断言的推理258
5.5.2 一个详细的断言示例259
5.6 案例研究:数字猜谜游戏262
5.6.1 不带提示的初始版本263
5.6.2 带提示的随机化版本264
5.6.3 健壮的终版本267
本章小结270
自测题270
习题276
编程项目279
第6章 文件处理280
6.1 文件读取基础知识280
6.1.1 数据和文件280
6.1.2 在Python中读取文件282
6.1.3 基于行的文件处理285
6.1.4 文件结构与消耗式输入286
6.1.5 提示输入文件290
6.2 基于标记的处理292
6.2.1 数值输入294
6.2.2 处理非法输入295
6.2.3 行与标记的混合使用296
6.2.4 处理不同数量的标记297
6.2.5 复杂的输入文件301
6.3 高级文件处理303
6.3.1 多行输入记录303
6.3.2 文件输出305
6.3.3 从网页中读取数据308
6.4 案例研究:邮政编码查询310
本章小结316
自测题316
习题318
编程项目321
第7章 列表323
7.1 列表基础知识323
7.1.1 创建列表324
……