《像计算机科学家一样思考Python》PDF下载

  • 购买积分:10 如何计算积分?
  • 作  者:(美)唐尼著
  • 出 版 社:北京:人民邮电出版社
  • 出版年份:2013
  • ISBN:9787115320926
  • 页数:238 页
图书介绍:本书是一本实用的Python语言学习指南。本书从最基本的编程概念开始讲起,包括语言语法和语义,而且每个编程概念都有清晰的定义,引领读者循序渐进地学习值、变量、语句、函数和数据结构。书中还会探讨如何处理文件和数据库,如何理解对象、方法,以及面向对象编程,如何使用调试技巧来修正语法、运行时和语义错误,此外还会通过案例分析探讨接口设计、数据结构和基于GUI的程序。

第1章 程序之道 1

1.1 Python编程语言 1

1.2什么是程序 3

1.3什么是调试 3

1.4语法错误 3

1.5运行时错误 4

1.6语义错误 4

1.7实验型调试 4

1.8形式语言和自然语言 5

1.9第一个程序 6

1.10调试 7

1.11术语表 7

1.12练习 9

第2章 变量、表达式和语句 10

2.1值和类型 10

2.2变量 11

2.3变量名称和关键字 12

2.4操作符和操作对象 13

2.5表达式和语句 13

2.6交互模式和脚本模式 14

2.7操作顺序 15

2.8字符串操作 15

2.9注释 16

2.10调试 16

2.11术语表 17

2.12练习 18

第3章 函数 19

3.1函数调用 19

3.2类型转换函数 19

3.3数学函数 20

3.4组合 21

3.5添加新函数 21

3.6定义和使用 23

3.7执行流程 23

3.8形参和实参 24

3.9变量和形参是局部的 25

3.10栈图 25

3.11有返回值函数和无返回值函数 26

3.12为什么要有函数 27

3.13使用from导入模块 28

3.14调试 28

3.15 术语表 29

3.16练习 30

第4章 案例研究:接口设计 32

4.1乌龟世界 32

4.2简单重复 33

4.3练习 34

4.4封装 35

4.5泛化 36

4.6接口设计 36

4.7重构 37

4.8一个开发计划 38

4.9文档字符串 39

4.10调试 39

4.11术语表 40

4.12练习 40

第5章 条件和递归 43

5.1求模操作符 43

5.2布尔表达式 43

5.3逻辑操作符 44

5.4条件执行 44

5.5选择执行 45

5.6条件链 45

5.7嵌套条件 46

5.8递归 46

5.9递归函数的栈图 48

5.10无限递归 48

5.11键盘输入 49

5.12调试 50

5.13术语表 51

5.14练习 52

第6章 有返回函数 54

6.1返回值 54

6.2增量开发 55

6.3组合 57

6.4布尔函数 58

6.5再谈递归 59

6.6坚持信念 60

6.7另一个示例 61

6.8检查类型 61

6.9调试 63

6.10术语表 64

6.11练习 64

第7章 迭代 67

7.1多重赋值 67

7.2更新变量 68

7.3 while语句 68

7.4 break语句 70

7.5平方根 70

7.6算法 72

7.7调试 72

7.8术语表 73

7.9练习 73

第8章 字符串 75

8.1字符串是一个序列 75

8.2 len 76

8.3使用for循环进行遍历 76

8.4字符串切片 77

8.5字符串是不可变的 78

8.6搜索 79

8.7循环和计数 79

8.8字符串方法 80

8.9操作符in 81

8.10字符串比较 81

8.11调试 82

8.12术语表 84

8.13练习 84

第9章 案例分析:文字游戏 86

9.1读取单词列表 86

9.2练习 87

9.3搜索 88

9.4使用下标循环 89

9.5调试 91

9.6术语表 91

9.7练习 91

第10章 列表 93

10.1列表是一个序列 93

10.2列表是可变的 93

10.3遍历一个列表 95

10.4列表操作 95

10.5列表切片 96

10.6列表方法 96

10.7映射、过滤和化简 97

10.8删除元素 98

10.9列表和字符串 99

10.10对象和值 100

10.11别名 101

10.12列表参数 102

10.13调试 103

10.14术语表 105

10.15 练习 105

第11章 字典 108

11.1使用字典作为计数器集合 110

11.2循环和字典 111

11.3反向查找 111

11.4字典和列表 113

11.5备忘 114

11.6全局变量 116

11.7长整数 117

11.8调试 118

11.9术语表 118

11.10练习 119

第12章 元组 121

12.1元组是不可变的 121

12.2元组赋值 122

12.3作为返回值的元组 123

12.4可变长参数元组 123

12.5列表和元组 124

12.6字典和元组 125

12.7比较元组 127

12.8序列的序列 128

12.9调试 128

12.10术语表 129

12.11练习 130

第13章 案例研究:选择数据结构 132

13.1单词频率分析 132

13.2随机数 133

13.3单词直方图 134

13.4最常用的单词 135

13.5可选形参 136

13.6字典减法 136

13.7随机单词 137

13.8马尔可夫分析 138

13.9数据结构 139

13.10调试 141

13.11术语表 142

13.12练习 142

第14章 文件 143

14.1持久化 143

14.2读和写 143

14.3格式操作符 144

14.4文件名和路径 145

14.5捕获异常 146

14.6数据库 147

14.7封存 148

14.8管道 149

14.9编写模块 150

14.10调试 151

14.11术语表 152

14.12练习 153

第15章 类和对象 154

15.1用户定义类型 154

15.2属性 155

15.3矩形 156

15.4作为返回值的实例 157

15.5对象是可变的 158

15.6复制 158

15.7调试 160

15.8术语表 160

15.9练习 161

第16章 类和函数 163

16.1时间 163

16.2纯函数 164

16.3修改器 165

16.4原型和计划 166

16.5调试 167

16.6术语表 168

16.7练习 168

第17章 类和方法 170

17.1面向对象特性 170

17.2打印对象 171

17.3另一个示例 172

17.4一个更复杂的示例 173

17.5init方法 173

17.6 str方法 174

17.7操作符重载 174

17.8基于类型的分发 175

17.9多态 176

17.10调试 177

17.11接口和实现 178

17.12术语表 179

17.13练习 179

第18章 继承 181

18.1卡片对象 181

18.2类属性 182

18.3对比卡牌 183

18.4牌组 184

18.5打印牌组 185

18.6添加、删除、洗牌和排序 186

18.7继承 186

18.8类图 188

18.9调试 189

18.10数据封装 190

18.11术语表 191

18.12练习 192

第19章 案例研究:Tkinter 195

19.1 GUI 195

19.2按钮和回调 196

19.3画布部件 197

19.4坐标序列 198

19.5更多部件 198

19.6包装部件 200

19.7菜单与Callable 202

19.8绑定 203

19.9调试 205

19.10术语表 206

19.11练习 206

附录A调试 209

附录B算法分析 217

附录C Lumpy 227

译后记 236