出版社: 人民邮电出版社
出品方: 图灵教育
原作名: Introduction to Computation and Programming Using Python
译者: 梁杰
出版年: 2015-4
页数: 284
定价: 59.00元
装帧: 平装
丛书: 图灵程序设计丛书·Python系列
ISBN: 9787115388018
内容简介 · · · · · ·
本书基于MIT(麻省理工学院)的一门课程写成,主要目标是帮助读者掌握并熟练使用各种计算技术。本书涵盖了Python的大部分特性,重点介绍如何使用Python 这门语言,共包含编程基础、Python程序设计语言、理解计算的关键概念、计算问题的解决技术等四个方面。本书将Python语言特性和编程方法贯穿全书,目的是帮助读者在学习Python的同时掌握如何使用计算来解决有趣的问题。
作者简介 · · · · · ·
作者简介:
John V. Guttag
1999年至2004年任麻省理工学院电气工程与计算机科学系主任(此前担任了5年的副主任)。Guttag教授目前是计算机科学与人工智能实验室网络及移动系统组的联合负责人。此外,他还进行软件工程、机器定理证明、硬件验证等领域的研究以及培训工作,并出版过相关主题的图书。Guttag教授获得美国布朗大学英语专业学士学位、应用数学硕士学位,获得多伦多大学计算机科学博士学位。
译者简介:
梁杰
北京航空航天大学计算机科学与技术专业大四学生。热爱开源、JavaScript、Python,喜欢做各种各样有趣的事情。
目录 · · · · · ·
第2章 Python介绍 6
2.1 Python的基本元素 7
2.1.1 对象、表达式和数值类型 8
2.1.2 变量和赋值 9
2.1.3 IDLE 11
· · · · · · (更多)
第2章 Python介绍 6
2.1 Python的基本元素 7
2.1.1 对象、表达式和数值类型 8
2.1.2 变量和赋值 9
2.1.3 IDLE 11
2.2 分支程序 12
2.3 字符串和输出 14
2.4 循环 16
第3章 一些简单的数值类程序 19
3.1 穷举法 19
3.2 for循环 21
3.3 近似解和二分查找 23
3.4 关于浮点数 26
3.5 牛顿拉夫逊方法 28
第4章 函数、作用域和规范抽象 30
4.1 函数和作用域 31
4.1.1 函数定义 31
4.1.2 关键字参数和默认值 32
4.1.3 作用域 33
4.2 规范 36
4.3 递归 39
4.3.1 斐波那契数 40
4.3.2 回文和分治 42
4.4 全局变量 44
4.5 模块 45
4.6 文件 47
第5章 结构化类型、可变性和高阶函数 49
5.1 元组 49
5.2 列表和可变性 51
5.2.1 克隆 55
5.2.2 列表解析 56
5.3 函数对象 57
5.4 字符串、元组和列表 58
5.5 字典 59
第6章 测试和调试 63
6.1 测试 63
6.1.1 黑盒测试 64
6.1.2 白盒测试 66
6.1.3 执行测试 67
6.2 调试 68
6.2.1 学习调试 70
6.2.2 设计实验 71
6.2.3 如果遇到阻碍 73
6.2.4 找到“目标”错误之后 74
第7章 异常和断言 75
7.1 处理异常 75
7.2 把异常当作控制流来使用 78
7.3 断言 81
第8章 类和面向对象编程 82
8.1 抽象的数据类型和类 82
8.1.1 使用抽象的数据类型来设计程序 86
8.1.2 使用类来记录学生和教师 86
8.2 继承 88
8.2.1 多层继承 90
8.2.2 替代法则 92
8.3 封装和信息隐藏 92
8.4 进阶实例:抵押贷款 97
第9章 算法复杂度简介 101
9.1 思考计算复杂度 101
9.2 渐近表示 104
9.3 一些重要的复杂度 105
9.3.1 常数复杂度 105
9.3.2 对数复杂度 106
9.3.3 线性复杂度 106
9.3.4 对数线性复杂度 107
9.3.5 多项式复杂度 107
9.3.6 指数复杂度 108
9.3.7 复杂度对比 110
第10章 一些简单的算法和数据结构 112
10.1 搜索算法 113
10.1.1 线性搜索和间接访问元素 113
10.1.2 二分查找和利用假设 114
10.2 排序算法 117
10.2.1 归并排序 118
10.2.2 把函数当做参数 120
10.2.3 Python中的排序 121
10.3 散列表 122
第11章 绘图以及类的扩展内容 126
11.1 使用PyLab绘图 126
11.2 扩展实例:绘制抵押贷款 131
第12章 随机算法、概率以及统计 137
12.1 随机程序 138
12.2 统计推断和模拟 139
12.3 分布 149
12.3.1 正态分布和置信水平 151
12.3.2 均匀分布 154
12.3.3 指数分布和几何分布 154
12.3.4 本福德分布 156
12.4 强队的获胜概率 157
12.5 散列和碰撞 160
第13章 随机游动和数据可视化 163
13.1 醉汉游动 163
13.2 有偏随机游动 169
13.3 危机重重的田地 175
第14章 蒙特卡罗模拟 177
14.1 帕斯卡的问题 178
14.2 过还是不过 179
14.3 使用查表提高性能 182
14.4 寻找π 183
14.5 模拟模型的结束语 187
第15章 理解实验数据 189
15.1 弹簧的行为 189
15.2 弹丸的行为 196
15.2.1 决定系数 198
15.2.2 使用计算模型 199
15.3 拟合指数分布 200
15.4 当理论缺失时 203
第16章 谎言和统计 205
16.1 垃圾输入只能产生垃圾输出 205
16.2 图表会骗人 206
16.3 与此谬误 208
16.4 统计方法并不能代替数据 209
16.5 抽样偏差 210
16.6 语境问题 211
16.7 当心外推法 212
16.8 得克萨斯神枪手谬误 213
16.9 百分比会说谎 215
16.10 小心谨慎 215
第17章 背包和图的最优化问题 216
17.1 背包问题 216
17.1.1 贪婪算法 217
17.1.2 0/1背包问题的最优解法 219
17.2 图的最优化问题 222
17.2.1 一些典型的图论问题 226
17.2.2 疾病传播和最小割 227
17.2.3 最短路径、深度优先搜索和广度优先搜索 227
第18章 动态规划 233
18.1 斐波那契数列 233
18.2 动态规划和0/1背包问题 235
18.3 动态规划和分治 241
第19章 机器学习简介 242
19.1 特征向量 244
19.2 距离度量 245
19.3 聚类 249
19.4 类型示例和聚类 250
19.5 K-means聚类 253
19.6 人造案例 255
19.7 稍微真实一些的示例 259
19.8 小结 265
附录 Python 2.7快速参考 266
· · · · · · (收起)
"编程导论"试读 · · · · · ·
计算机只能做两件事,执行计算并记录计算的结果,但是它把这两件事完成得非常漂亮。常见的台式机和笔记本电脑每秒钟可以执行近10亿次计算,快得难以置信。想象一下,让一个球从1米高自由落体掉到地板上,就在这段时间内,你的计算机可能已经执行了10亿条指令。从内存角度来说,一台普通的计算机可能有几百GB(gigabyte,1 gigabyte是10亿字节)。几百GB到底有多大呢?如果一字节(byte,1...
丛书信息
· · · · · ·
喜欢读"编程导论"的人也喜欢 · · · · · ·
编程导论的书评 · · · · · · ( 全部 3 条 )
非常适合编程入门(世界一流大学指定官方课程教材)
> 更多书评 3篇
这本书的其他版本 · · · · · · ( 全部7 )
-
人民邮电出版社 (2018)8.7分 50人读过
-
The MIT Press (2013)8.5分 39人读过
-
The MIT Press (2016)9.6分 21人读过
-
The MIT Press (2013)8.0分 16人读过
以下书单推荐 · · · · · · ( 全部 )
谁读这本书? · · · · · ·
二手市场
· · · · · ·
- 在豆瓣转让 有274人想读,手里有一本闲着?
订阅关于编程导论的评论:
feed: rss 2.0
2 有用 二赫 2015-07-15 23:27:33
值得一读!
0 有用 鲍尔boyle 2016-01-03 19:59:25
MIT的书,是经典读物
0 有用 Raisu 2018-04-13 10:23:29
公开课讲义
0 有用 AlphaDiao 2016-07-12 13:11:42
其实是Python入门
0 有用 Seed 2015-09-12 21:20:27
感觉跟SICP比起来比较没有那么探索计算机科学,而是比较把计算机作为工具的实践(蒙特卡洛)讲得比较细致
0 有用 Raisu 2018-04-13 10:23:29
公开课讲义
0 有用 Jest 2018-02-23 19:04:05
之前入门的时候看的。后面涉及到了对科研的支持,没必要全读完
0 有用 都会华灯初上 2016-12-12 16:19:20
相比较SICP的玄幻,这本书更佳现实主义。
0 有用 张无眠 2016-08-24 14:29:32
短小精悍,python入门指导
2 有用 猫壳 2016-08-23 20:27:16
可以看作MIT 6.00.1课程的讲义,Python和编程入门的基础问题都提到了,实际上本书可能更像是科研人员的编程入门而不是程序员的入门,书中花费了大量时间讲解了统计学相关知识和图表的生成。编程问题点到为止,后面的章节还是有一定意义的,推荐泛读。@沈阳市图书馆