Python编程实践
出版信息
Jennifer Campbell、Paul Gries、Jason Montojo、Greg Wilson / 唐学韬 / 机械工业出版社华章公司 / 2011-12-31 / 49.00元
内容简介
Python是当今世界流行的编程语言之一。本书共15章,通过一些短小精悍的交互式Python脚本帮助学生进行练习,并在这个过程中掌握诸如数据结构、排序和搜索算法、面向对象编程、数据库访问、图形用户界面等基本概念以及良好的程序设计风格。本书既是一本注重科学的计算机科学专业教材,也是一本目标明确的Python参考书。
本书语言风格言简意赅,图表丰富,简单实用,是一本优秀的Python入门级读物,适合Python初学者使用。
作者简介
Jennifer Campbell是多伦多大学计算机科学系高级讲师,本书所基于的课程就是由她创建的。
Paul Gries是多伦多大学计算机科学系高级讲师。他获得过许多教学成果奖,并著有一些讲解计算机科学预备知识的书籍。
Jason Montojo曾是Jennifer Campbell和Paul Gries的学生,此后在IBM从事Eclipse编程平台方面的工作。他还是一名专业的摄影师和数字艺术家,本书所有的图表都是由他处理的。
Greg Wilson曾从事过高性能科学计算、数据可视化以及计算机安全等方面的工作,目前是Software Carpentry(http://software-carpentry.org)的项目负责人。他拥有爱丁堡大学计算机科学博士学位,曾编撰了多本技术书籍和儿童读物,其中包括《Beautiful Code》(中文版《代码之美》已由机械工业出版社出版,ISBN:978-7-111-25133-0)。
目录
对本书的赞誉
译者序
第1章 引言/ 1
1.1 程序和编程/ 3
1.2 一点说明/ 4
1.3 要安装什么/ 4
1.4 给教师们的话/ 4
1.5 小结/ 5
第2章 你好,Python/ 7
2.1 概述/ 8
2.2 表达式/ 10
2.3 什么是类型/ 12
2.4 变量和赋值语句/ 14
2.5 当出现错误的时候/ 17
2.6 函数基础/ 18
2.7 内置函数/ 21
2.8 风格漫谈/ 22
2.9 小结/ 22
2.10 习题/ 23
第3章 字符串/ 25
3.1 字符串/ 26
3.2 字符转义/ 28
3.3 多行字符串/ 30
3.4 打印输出/ 30
3.5 格式化打印输出/ 31
3.6 用户输入/ 32
3.7 小结/ 33
3.8 习题/ 33
第4章 模块/ 37
4.1 模块的引入/ 38
4.2 定义你自己的模块/ 41
4.3 对象和方法/ 47
4.4 像素和颜色/ 52
4.5 测试/ 55
4.6 风格漫谈/ 60
4.7 小结/ 60
4.8 习题/ 61
第5章 列表/ 65
5.1 列表和索引/ 66
5.2 修改列表/ 68
5.3 与列表相关的内置函数/ 70
5.4 处理列表项/ 72
5.5 切片/ 75
5.6 别名机制/ 76
5.7 列表方法/ 77
5.8 嵌套列表/ 79
5.9 其他类型的序列/ 80
5.10 把文件看做列表/ 82
5.11 注释/ 85
5.12 小结/ 86
5.13 习题/ 86
第6章 做出选择/ 89
6.1 布尔逻辑/ 90
6.2 if语句/ 99
6.3 把条件保存起来/ 103
6.4 小结/ 105
6.5 习题/ 105
第7章 重复/ 109
7.1 计数循环/ 110
7.2 while循环/ 118
7.3 用户输入循环/ 124
7.4 控制循环/ 125
7.5 风格漫谈/ 128
7.6 小结/ 129
7.7 习题/ 130
第8章 文件处理/ 133
8.1 每行一条记录/ 134
8.2 含有多个字段的记录/ 144
8.3 定位数据/ 147
8.4 多行记录/ 149
8.5 向前看/ 151
8.6 写入文件/ 153
8.7 小结/ 154
8.8 习题/ 154
第9章 集合和字典/ 157
9.1 集合/ 158
9.2 字典/ 162
9.3 对字典进行反相操作/ 168
9.4 小结/ 169
9.5 习题/ 170
第10章 算法/ 173
10.1 搜索/ 174
10.2 计时/ 181
10.3 小结/ 182
10.4 习题/ 182
第11章 搜索和排序/ 185
11.1 线性搜索/ 186
11.2 二分搜索/ 189
11.3 排序/ 193
11.4 更高效的排序算法/ 199
11.5 合并排序:一种Nlog2N的
算法/ 199
11.6 小结/ 203
11.7 习题/ 204
第12章 构建应用程序/ 207
12.1 关于函数的更多知识/ 208
12.2 异常/ 212
12.3 测试/ 217
12.4 调试/ 223
12.5 模式/ 224
12.6 小结/ 228
12.7 习题/ 228
第13章 面向对象编程/ 237
13.1 Color类/ 238
13.2 特殊方法/ 243
13.3 更多关于dir和help的
知识/ 245
13.4 OO的一点理论知识/ 247
13.5 一个长点的例子/ 254
13.6 小结/ 258
13.7 习题/ 259
第14章 图形用户界面/ 261
14.1 Tkinter模块/ 262
14.2 构建简单的GUI/ 263
14.3 模型、视图和控制器/ 267
14.4 样式/ 271
14.5 一些别的插件/ 275
14.6 面向对象的GUI/ 278
14.7 小结/ 279
14.8 习题/ 280
第15章 数据库/ 283
15.1 概述/ 284
15.2 第一步/ 286
15.3 获取数据/ 288
15.4 更新和删除/ 291
15.5 事务/ 292
15.6 用NULL来处理缺失数据/ 294
15.7 通过连接将表合并起来/ 295
15.8 键和约束/ 299
15.9 高级功能/ 300
15.10 小结/ 304
15.11 习题/ 305
参考资料/ 308