《Python 3.6编程实践指南 计算机科学入门 原书第3版》PDF下载

  • 购买积分:12 如何计算积分?
  • 作  者:(美)保罗·格里斯,(美)詹妮弗·坎贝尔,(美)杰森·蒙特霍著
  • 出 版 社:北京:机械工业出版社
  • 出版年份:2019
  • ISBN:7111609940
  • 页数:316 页
图书介绍:

第1章 什么是编程 1

1.1程序和编程 2

1.2什么是编程语言 3

1.3什么是程序错误(Bug) 3

1.4方括号、圆括号和花括号的区别 4

1.5安装Python 4

第2章 你好,Python 5

2.1计算机如何运行一个Python程序 5

2.2表达式和值:用Python做算术 6

2.2.1类型 7

2.2.2整数除法、模和幂运算 8

2.3什么是类型 9

2.3.1有穷精度 10

2.3.2运算的优先级 10

2.4变量和计算机内存:记忆值 12

2.4.1值、变量和计算机内存 13

2.4.2赋值语句 14

2.4.3给变量重新赋值 15

2.4.4增强赋值 16

2.5 Python如何告诉用户出错了 18

2.6占多行的单个语句 19

2.7代码的描述 20

2.8增强代码的可读性 21

2.9本章小结 21

2.10习题 22

第3章 函数的设计与应用 24

3.1 Python提供的函数 24

3.2内存地址:Python如何跟踪内存存储的值 27

3.3自定义函数 28

3.4用局部变量作临时存储 31

3.5在内存模型中跟踪函数调用 32

3.6设计新函数:一个菜单 38

3.6.1设计三个有关生日的函数 40

3.7编写和运行一个程序 48

3.8省略一个返回语句:None 50

3.9处理代码不能处理的情况 50

3.10本章小结 51

3.11习题 52

第4章 文本的处理 54

4.1构造字符串 54

4.1.1串上的操作 55

4.2在串中使用特殊字符 57

4.3构建多行串 58

4.4打印信息 59

4.5从键盘获取信息 62

4.6本章小结 63

4.7习题 63

第5章 选择 65

5.1布尔类型 65

5.1.1布尔运算 65

5.1.2关系运算 68

5.1.3比较运算的组合 70

5.1.4短路求值 72

5.1.5串的比较 72

5.2选择执行的语句 73

5.3嵌套条件语句 79

5.4记住一个布尔表达式求值的结果 79

5.5本章小结 81

5.6习题 81

第6章 程序组织的模块化方法 84

6.1导入模块 85

6.2定义自己的模块 89

6.2.1导入时发生了什么 90

6.2.2在导入时选择要运行的代码:__main__ 91

6.3半自动地测试代码 95

6.4函数分组的原则 96

6.5本章小结 96

6.6习题 97

第7章 方法的使用 98

7.1模块、类和方法 98

7.2面向对象的调用方法 100

7.3探索字符串方法 101

7.4那些下划线是什么 105

7.5本章小结 107

7.6习题 107

第8章 使用列表存储数据集合 109

8.1存储和访问列表中的数据 109

8.1.1空列表 111

8.1.2列表是异构的 111

8.2列表类型注释 112

8.3修改列表 113

8.4列表上的操作 114

8.4.1列表上的in操作符 116

8.5列表切片 116

8.6使用别名:名称代表什么 118

8.6.1可变参数 118

8.7列表方法 120

8.8处理列表的列表 121

8.9本章小结 123

8.10习题 123

第9章 使用循环重复代码 126

9.1处理列表中的数据项 126

9.2处理字符串中的字符 128

9.3在某个范围的数字上循环 128

9.3.1生成数字范围 128

9.4用索引处理列表 130

9.4.1使用索引处理并行列表 132

9.5循环嵌套循环 133

9.5.1嵌套列表上的循环 134

9.5.2循环不规则列表 135

9.6循环直到某个条件成立 136

9.6.1无限循环 138

9.7基于用户输入的重复 138

9.8使用break和continue控制循环 139

9.8.1 break语句 139

9.8.2 continue语句 141

9.8.3关于break和continue的警告 142

9.9本章小结 143

9.10习题 143

第10章 文件读写 146

10.1文件分多少种 146

10.2打开文件 147

10.2.1 with语句 148

10.2.2计算机上的文件是如何组织的 149

10.2.3指定想要的文件 149

10.3读取文件的方法 150

10.3.1读取方法 150

10.3.2 Readlines方法 151

10.3.3 “For Line in File”方法 152

10.3.4 Readline方法 153

10.4互联网上的文件 155

10.5写入文件 156

10.6使用StringlO编写示例调用 157

10.7编写使用文件读取技术的算法 159

10.7.1跳过标题 159

10.7.2处理数据中缺失的值 161

10.7.3处理空格分隔的数据 163

10.8多行记录 167

10.9向前看 170

10.10本章小结 172

10.11习题 172

第11章 使用其他容器类型存储数据 174

11.1使用集合存储数据 174

11.1.1集合运算 176

11.1.2集合示例:北极鸟 178

11.1.3集合的内容一定是不可变的 179

11.2使用多元组存储数据 179

11.2.1使用多元组赋值给多个变量 183

11.3用字典存储数据 184

11.3.1更新和检查成员 186

11.3.2遍历字典 187

11.3.3字典操作 188

11.3.4字典示例 190

11.4反转字典 191

11.5在元组、集合和字典中使用in运算符 192

11.6各种容器的比较 193

11.7创建新的类型注释 193

11.8本章小结 194

11.9习题 195

第12章 算法的设计 197

12.1查找两个最小值 197

12.1.1查找、移除、查找 199

12.1.2排序、确定最小值、获取索引 201

12.1.3遍历列表 202

12.2定时功能 205

12.3本章小结 207

12.4习题 207

第13章 搜索与排序 209

13.1搜索列表 209

13.1.1线性搜索概述 209

13.1.2线性搜索的while循环版本 211

13.1.3线性搜索的for循环版本 212

13.1.4哨兵搜索 213

13.1.5对搜索进行计时 214

13.1.6线性搜索的运行时间 215

13.2二分搜索 215

13.2.1二分搜索的运行时间 219

13.2.2内置二分搜索 219

13.3排序 220

13.3.1选择排序 221

13.3.2插入排序 225

13.3.3性能 227

13.4更高效的排序算法 229

13.4.1第一次尝试 229

13.5归并排序:一种快速排序算法 229

13.5.1归并两个有序列表 230

13.5.2归并排序 230

13.5.3归并排序的分析 232

13.6本章小结 233

13.7习题 234

第14章 面向对象的编程 236

14.1理解一个问题域 236

14.2 isinstance函数、object类和Book类 237

14.3在Book类中编写一个方法 240

14.4使用Python语法:更多特殊的方法 246

14.5面向对象理论的一些知识 249

14.5.1封装 249

14.5.2多态 250

14.5.3继承 251

14.6案例学习:分子、原子和PDB文件 254

14.6.1 Atom类 255

14.6.2 Molecule类 256

14.7本章小结 258

14.8习题 258

第15章 测试与调试 262

15.1为什么需要做程序测试 262

15.2案例学习:测试above_freezing 263

15.2.1为above_freezing选择测试样例 263

15.2.2使用unittest模块测试above_freezing 264

15.3案例学习:测试函数running_sum 267

15.3.1为函数running_sum选择测试样例 268

15.3.2使用unittest模块测试running_sum函数 268

15.4选择测试样例 273

15.5寻找程序错误 273

15.6本章小结 274

15.7习题 274

第16章 创建图形用户接口 277

16.1使用tkinter模块 277

16.2构建一个基本的GUI 278

16.2.1在小部件中使用可修改变量 279

16.2.2使用框架类型来组合小部件 280

16.2.3使用输入框类型从用户处获取信息 281

16.3模型、视图和控制器 281

16.3.1使用Lambda 283

16.4自定义可视化样式 286

16.4.1改变字体 286

16.4.2改变颜色 286

16.4.3小部件的布局 288

16.5其他小部件简介 289

16.5.1使用文本 289

16.5.2使用复选按钮 290

16.5.3使用菜单 291

16.6面向对象的GUI 292

16.7本章小结 293

16.8习题 294

第17章 数据库 295

17.1概述 295

17.2创建和填充 296

17.2.1保存更改 298

17.2.2关闭连接 299

17.3数据检索 299

17.3.1查询条件 301

17.4更新和删除 301

17.5为缺失的数据使用NULL 302

17.6使用连接来组合表格 303

17.6.1移除重复值 306

17.7键和约束 307

17.8高级功能 308

17.8.1聚合 308

17.8.2分组 308

17.8.3自连接 309

17.8.4嵌套查询 310

17.8.5事务 312

17.9本章小结 313

17.10习题 314

参考文献 316