Python 3程序开发指南

当前位置:首页 > 计算机网络 > 程序设计 > Python 3程序开发指南

出版社:人民邮电
出版日期:2011-2-1
ISBN:9787115245076
作者:(美)萨默菲尔德
页数:618页

章节摘录

版权页:插图:本章提供了足以开始编写Python程序的信息。如果此时尚未安装Python,强烈建议读者先行安装Python,以便随时进行编程实践,获取实际经验,巩固所学的内容。本章第1节展示了如何创建并执行Pytllon程序。你可以使用自己最喜欢的普通文本编辑器来编写Python代码,但本节中讨论的IDLE程序设计环境提供的不仅是一个代码编辑器,还提供了很多附加的功能,包括一些有助于测试Pvthon代码、调试Pvthon程序的工具。第2节介绍了Python的8个关键要素,通过这8个要素本身,就足以编写有用的程序。这8个要素在本书的后续章节中将全面涉及与讲解,随着本书内容的推进,这些要素将被Python的其他组成部分逐渐补充、完善。到本书结束时,读者将对Python语言有完整的了解,并充分利用该语言提供的所有功能编写自己的Pvthon程序。本章最后一节介绍了两个短小的程序,这两个小程序利用了第2节中介绍的Python特性的一部分,以便读者可以及时尝试Python程序设计。

内容概要

Mark Summerfield,Qtrac公司的所有人,同时还是一位在Python、C++、Qt以及PyQt等领域卓有专长的独立培训专家、顾问、技术编辑与作者。Mark Summerfield撰写的书籍包括《Rapid GUI Programming with Python》以及《Qt:The Definitive Guideto PyQt Programming》(Addison—Wesley,2008),并与Jasmin Blanchette共同编写了《C++GUI Programming with Qt 4》(Addison—Wesley,2006)。作为Trolltech的文档管理者,Mark创立了并负责编辑Trolltech的技术杂志《Qt Quarterly》。

编辑推荐

在《Python 3程序开发指南(第2版)》中,一流的Python程序员Mark Summerfield展示了如何充分利用Python 3的功能与特性来编写代码。与以前的版本相比。Python 3功能更强大,使用更方便,语法更一致,表达能力更丰富。《Python 3程序开发指南(第2版)》将编写程序、使用标准或第三方Python 3库、创建新的专用库模块所必需的所有相关知识整合到了一起。 作为一名具有多年Python使用经验的程序员,Summerfield在《Python 3程序开发指南(第2版)》中为读者深度分析与讲解了从其他途径无法获取的Python3使用与开发技术。Summerfield从Python的“优美核心(beautiful heart)”(即编写高健壮性、高性能程序的8个关键要素)开始进行讲解,并以这些关键要素为基础,介绍了有助于增强程序开发实用技能的新主题,每个主题都包含其概念和多个操作实例。《Python 3程序开发指南(第2版)》内容包括:使用过程型、面向对象以及函数型等程序设计范型进行Python程序开发:创建自定义的包与模块:对二进制文件、文本文件以及XML文件进行读、写,其中包括可选的压缩、随机存取、文本与XMI一分析等;充分利用高级数据类型、集合、控制结构与函数;将程序负荷分布到多个进程与线程上;对SQL数据库以及DBM文件(键一值对)进行编程:调试技术,以及并使用测试驱动开发来避免开发初期的bug;使用Python的正则表达式mini-language与模块;分析技术,其中包括如何使用第三方PyParsing和PLY模块;构建可用的、高效的GUI应用程序;高级编程技术,其中包括生成器、函数与类装饰器、上下文管理器、描述符、抽象基类、元类、协同程序等内容。《Python 3程序开发指南(第2版)》既可以作为Python编程指南,也可以作为Python语言参考手册。《Python 3程序开发指南(第2版)》附带有大量可下载的实例代码,所有这些代码都在Windows、Linux以及Mac OS X等操作系统上使用Python 3进行了测试。针对Python 3.0/3.1而写内容详实全面,实例丰富,便于学习

作者简介

编辑推荐
在本书中,一流的Python程序员Mark Summerfield展示了如何充分利用Python 3的功能与特性来编写代码。与以前的版本相比。Python 3功能更强大,使用更方便,语法更一致,表达能力更丰富。本书将编写程序、使用标准或第三方Python 3库、创建新的专用库模块所必需的所有相关知识整合到了一起。
作为一名具有多年Python使用经验的程序员,Summerfield在本书中为读者深度分析与讲解了从其他途径无法获取的Python3使用与开发技术。Summerfield从Python的“优美核心(beautiful heart)”(即编写高健壮性、高性能程序的8个关键要素)开始进行讲解,并以这些关键要素为基础,介绍了有助于增强程序开发实用技能的新主题,每个主题都包含其概念和多个操作实例。
本书既可以作为Python编程指南,也可以作为Python语言参考手册。
内容简介
Python是一种脚本语言,在各个领域得到了日益广泛的应用。本书全面深入地对Python语言进行了讲解。
本书首先讲述了构成Python语言的8个关键要素,之后分章节对其进行了详尽的阐述,包括数据类型、控制结构与函数、模块、文件处理、调试、进程与线程、网络、数据库、正则表达式、GUI程序设计等各个方面,并介绍了其他一些相关主题。全书内容以实例讲解为主线,每章后面附有练习题,便于读者更好地理解和掌握所讲述的内容。
本书适合于作为Python语言教科书使用,对Python程序设计人员也有一定的参考价值。

书籍目录

第1章 过程型程序设计快速入门 1
1.1 创建并运行python程序 1
1.2 python的关键要素 5
1.2.1 要素#1:数据类型 6
1.2.2 要素#2:对象引用 7
1.2.3 要素#3:组合数据类型 9
1.2.4 元素#4:逻辑操作符 12
1.2.5 要素#5:控制流语句 16
1.2.6 要素#6:算术操作符 20
1.2.7 要素#7:输入/输出 23
1.2.8 要素#8:函数的创建与调用 25
1.3 实例 27
1.3.1 bigdigits.py 28
1.3.2 generate_grid.py 30
1.4 总结 33
1.5 练习 35
第2章 数据类型 38
2.1 标识符与关键字 38
2.2 integral类型 41
2.2.1 整数 41
.2.2.2 布尔型 44
2.3 浮点类型 44
2.3.1 浮点数 45
2.3.2 复数 48
2.3.3 十进制数字 49
2.4 字符串 50
2.4.1 比较字符串 53
2.4.2 字符串分片与步距 54
2.4.3 字符串操作符与方法 56
2.4.4 使用str.format()方法进行字符串格式化 62
2.4.5 字符编码 73
2.5 实例 75
2.5.1 quadratic.py 75
2.5.2 csv2html.py 78
2.6 总结 82
2.7 练习 84
第3章 组合数据类型 86
3.1 序列类型 86
3.1.1 元组 87
3.1.2 命名的元组 89
3.1.3 列表 91
3.1.4 列表内涵 96
3.2 集合类型 98
3.2.1 集合 98
3.2.2 集合内涵 102
3.2.3 固定集合 102
3.3 映射类型 103
3.3.1 字典 103
3.3.2 字典内涵 110
3.3.3 默认字典 111
3.4 组合数据类型的迭代与复制 113
3.4.1 迭代子、迭代操作与函数 113
3.4.2 组合类型的复制 121
3.5 实例 123
3.5.1 generate_usernames.py 123
3.5.2 statistics.py 126
3.6 总结 130
3.7 练习 131
第4章 控制结构与函数 133
4.1 控制结构 133
4.1.1 条件分支 133
4.1.2 循环 135
4.2 异常处理 136
4.2.1 捕获与产生异常 136
4.2.2 自定义异常 141
4.3 自定义函数 144
4.3.1 名称与docstrings 148
4.3.2 参数与参数拆分 149
4.3.3 存取全局范围的变量 152
4.3.4 lambda函数 153
4.3.5 断言 155
4.4 实例:make_html_skeleton.py 156
4.5 总结 162
4.6 练习 162
第5章 模块 165
5.1 模块与包 165
5.1.1 包 169
5.1.2 自定义模块 171
5.2 python标准库概览 181
5.2.1 字符串处理 181
5.2.2 io.stringio类 182
5.2.3 命令行程序设计 183
5.2.4 数学与数字 184
5.2.5 时间与日期 184
5.2.6 实例:calendar、datetime与time模块 185
5.2.7 算法与组合数据类型 185
5.2.8 文件格式、编码与数据持久性 187
5.2.9 文件、目录与进程处理 190
5.2.10 网络与internet程序设计 192
5.2.11 xml 193
5.2.12 其他模块 195
5.3 总结 196
5.4 练习 198
第6章 面向对象程序设计 200
6.1 面向对象方法 200
6.2 自定义类 204
6.2.1 属性与方法 205
6.2.2 继承与多态 209
6.2.3 使用特性进行属性存取控制 211
6.2.4 创建完全整合的数据类型 213
6.3 自定义组合类 225
6.3.1 创建聚集组合数据的类 225
6.3.2 使用聚集创建组合类 231
6.3.3 使用继承创建组合类 237
6.4 总结 244
6.5 练习 245
第7章 文件处理 247
7.1 二进制数据的读写 251
7.1.1 带可选压缩的pickle 252
7.1.2 带可选压缩的原始二进制数据 256
7.2 文本文件的写入与分析 263
7.2.1 写入文本 263
7.2.2 分析文本 265
7.2.3 使用正则表达式分析文本 268
7.3 写入与分析xml文件 270
7.3.1 元素树 270
7.3.2 dom 274
7.3.3 手动写入xml 277
7.3.4 使用sax分析xml 278
7.4 随机存取二进制文件 281
7.4.1 通用的binaryrecordfile类 281
7.4.2 实例:bikestock模块的类 289
7.5 总结 292
7.6 练习 293
第8章 高级程序设计技术 295
8.1 过程型程序设计进阶 296
8.1.1 使用字典进行分支 296
8.1.2 生成器表达式与函数 297
8.1.3 动态代码执行与动态导入 300
8.1.4 局部函数与递归函数 306
8.1.5 函数与方法修饰器 311
8.1.6 函数注释 314
8.2 面向对象程序设计进阶 317
8.2.1 控制属性存取 317
8.2.2 函子 320
8.2.3 上下文管理器 322
8.2.4 描述符 325
8.2.5 类修饰器 330
8.2.6 抽象基类 333
8.2.7 多继承 340
8.2.8 元类 342
8.3 函数型程序设计 346
8.3.1 偏函数 348
8.3.2 协程 349
8.4 实例:valid.py 356
8.5 总结 359
8.6 练习 360
第9章 调试、测试与profiling 361
9.1 调试 361
9.1.1 处理语法错误 362
9.1.2 处理运行时错误 363
9.1.3 科学的调试 367
9.2 单元测试 371
9.3 profiling 377
9.4 小结 382
第10章 进程与线程 383
10.1 使用多进程模块 384
10.2 将工作分布到多个线程 388
10.2.1 实例:线程化的单词寻找程序 389
10.2.2 实例:一个线程化的重复文件发现程序 392
10.3 总结 396
10.4 练习 397
第11章 网络 399
11.1 创建tcp客户端 400
11.2 创建tcp服务器 406
11.3 总结 412
11.4 练习 412
第12章 数据库程序设计 414
12.1 dbm数据库 414
12.2 sql数据库 418
12.3 总结 425
12.4 练习 425
第13章 正则表达式 427
13.1 python的正则表达式语言 428
13.1.1 字符与字符类 428
13.1.2 量词 429
13.1.3 组与捕获 431
13.1.4 断言与标记 433
13.2 正则表达式模块 436
13.3 总结 444
13.4 练习 445
第14章 分析简介 446
14.1 bnf语法与分析的术语 447
14.2 手动编写分析器 451
14.2.1 简单的键-值数据分析 451
14.2.2 播放列表数据分析 454
14.2.3 blocks域特定语言的分析 456
14.3 使用pyparsing进行更python化的分析 464
14.3.1 pyparsing快速介绍 465
14.3.2 简单的键-值数据分析 468
14.3.3 播放列表数据分析 470
14.3.4 分析块域特定语言 471
14.3.5 分析一阶逻辑 476
14.4 使用ply进行lex/yacc风格的分析 481
14.4.1 简单的键-值数据分析 483
14.4.2 播放列表数据分析 485
14.4.3 分析块域特定语言 487
14.4.4 分析一阶逻辑 489
14.5 小结 493
14.6 练习 494
第15章 gui程序设计介绍 496
15.1 对话框风格的程序 499
15.2 主窗口风格的程序 504
15.2.1 创建一个主窗口 504
15.2.2 创建自定义对话框 514
15.3 总结 517
15.4 练习 518

图书封面


 Python 3程序开发指南下载 精选章节试读 更多精彩书评



发布书评

 
 


精彩书评 (总计6条)

  •     完整看到了第六章(面向对象程序设计),说说感受:1. 翻译实在太不负责任,我几乎是边看边改错。1.1 常用术语翻译生涩,让人感觉译者不是IT业内人士。很多英文名词明明已有被广泛接受的对应中文术语,却偏偏用新词。就近举例: 中午译本p221, 讲类的三种不同方法翻译为:类方法/通常方法/静态方法,“通常方法”改为“普通方法”是否更合适?1.2 到处都是不通顺的语句,前面几章勉强还能读,后面越演越烈,读一句就要停下来想好久。举例,p224: "我们已经使得异常 错误消息与Python为自己的类型使用的消息匹配,用于处理二元方法以及n元函数(比如pow())的代码遵循类似的模式,但使用的是不同的错误信息。"1.3 文字错误。p225, "SortedDict 则用于填补Python标准库中令人差异的空白", “差异”是否应为"诧异"?几点感想:i) 专业书籍还是应该由具有一定经验的从业人员来翻译,尽量使用惯用术语;ii) 语句通顺,没有大的语法问题,是书面语言的基本要求。对科技书籍而言,因为有上下文以及预期读者的知识背景,部分用词翻译不准并不是太大的问题,但是混乱的语句会严重影响阅读感受,甚至毁掉一本经典原著;iii) 对于自己的翻译作品,要有基本的责任心和质量要求,站在读者角度,看自己能不能读下去。如果达不到要求,宁可不要出版,白字铅印的名字,是要进图书馆的!就算不为读者负责,也要顾及自己的羽毛,尤其是身为教师!!2. 除开翻译问题之外,内容选择上,前面6章基本知识都覆盖到了,方便快速上手。但全是对例子的讲解描述,重要概念/用法/经验之谈散落其中,重点不够突出,需要自己花功夫总结。后面几章还没细看,粗略浏览一遍,初步印象是广度有余,深度不足。
  •     要说书还行。但说实话,这看书自学不太容易。我在网上找到一个猎豹网校,全是电脑课程,就在那里学了。我觉得网校那种看着视频课程学习的方式,特别方便,也特别适合我。
  •     此书深入浅出,适合python初学者学习。书中的内容包含了进行python编程的所有知识,实例经典,习题丰富。本书每章最后都有一节练习,这些题目即使对于编程老手来说也有一定的难度。python值得大家学习,即使以后不用python工作,但这种语言的编程思维非常值得大家借鉴。

精彩短评 (总计65条)

  •     翻译太烂了,而且印刷有错误,几乎毁掉了我对自学编程的兴趣
  •     翻译有点渣
  •     本来想买英文版的,但好像没找到——幸好有英文版——权当入门级的学习材料了——印刷的纸质很好。
  •     中文版的翻译多少有些让人心酸,这本书的内容应该是不错的。看完开头第一章就能够自行编程了,后面的内容更多的可以以Reference的角度去看。可是中文翻译很多用词很别扭,句子读起来觉得太过直译了,估计又是哪个副教授让学生加班加点赶工出来的。
  •     我看的是第二版,配套程序,非常适合我这种自学的人,先看代码再看教程。有些人说做练习,我觉得其实这本书的本意就是要吃透一些范本。很多东西只要知道就行的,不要有学习洁癖。。。另外人家说这书翻译的不好,我怎么没怎么觉得呢?抠字眼的话我觉得阅读态度就有问题,这本来就应该是一目十行看的。
  •     phython的3.0 入门之作
  •     不错,但是似乎python3太新了,没有很多的库可以用。
  •     送货速度快,还没来得及看
  •     这本书瞄了一眼,感觉很不错。。刚开始看哦。以后再过来补心得
  •     不错 质量还可以 送货速度很快
  •     循序渐进的好书,自学不二选择。
  •     对于喜欢python编程的朋友是一本比较好的指南书啦
  •     不管从哪方面来说都很好
  •     例子很全面,相当于Java里的那本《Java Cookbook》
  •     还行,不过作者已经假设读者有其他语言的基础。
    虽然Python 3还不是主流

    BTW:《python参考手册(第4版)》是Python 2.6的。
  •     一本还算不错的语法手册
  •     书很厚,针对python 3的 ,还没开始用这个版本,不太了解区别
  •     书还可以、比较喜欢、但是我觉得适合有一定简单编程基础的看、
  •     很棒
  •     这本书一定要配合python学习手册一起看才行,适合有一定基础的人看
  •     此书不适合完全没基础的新手阅读。坚持看到第3章,发现后面的开始看不懂。需要一定的C/java基础,翻译问题也如网友书评一般,内容也有些许错误的地方。
  •     书好不好先不说,翻译实在是垃圾,给人的感觉是完全不懂,术语瞎翻译,完全是骗钱吧,出版社也是,这种书能出版?
  •     适合查看函数
  •     总体在自己预料之内
  •     这本书翻译的非常垃圾,我怀疑译者根本就不知道Python为何物。语句非常不通顺,懂点编程的人拿个金山词霸边看边翻译都比他翻译的好。简直是误人子弟啊!
  •     叙述啰嗦,有些该展开的东西却没展开知识一笔带过~
  •     跳过了几章,置于案头备查~
  •     翻译得真是烂啊。
  •     刚开始看觉得没有头绪,但是要坚持看下去,尤其是要把每段示例代码搞懂,看到中间的时候再回头看看前3章,又会有不少收获,书的内容写的比较全面
  •     翻译的不错,随书没提供源代码
  •     书还可……然而,最近joyo送来的书总有损伤,包装不如以前那么有气泡垫了,加上送快递的人装卸粗暴,装载箱粗糙,颠簸……100%的图书损伤,有碍品相……希望joyo改进之。
  •     还是看纸质的好。。。
  •     没有细读,不做评论
  •     很好的,目前为数不多的python3参考
  •     有基础的看起来还算凑合。年终总结下 看了的都mark as read.
  •     细节太细了。有点像手册。
  •     非常适合入门级人员看。
  •     内容很少,而且讲解不全面
  •     内容还可以,讲3的书实在不多。
  •     代码没什么实用性,过于理论化
  •     从学校图书馆借的。翻译的真垃圾。也不知道是不是原本写的就不怎么通顺。
  •     刚看了前两章,例子不错
  •     我建议买这本书的朋友不如直接买《python参考手册(第4版)》
  •     内容非常浅显,几乎都是点到为止,甚至点不到就止了。翻译更是臭到极点。
  •     知识点很全,适合了解了一点Python的人阅读,不过例子有点偏,总体还是很棒的
  •     作为一个初学者,没有完全看懂。
  •     作为Python的学习用书非常的不错,作者展示了如何充分利用Python 3的功能与特性来编写代码,Python 3功能更强大,使用更方便,语法更简介。
  •     翻译得实在太糟糕,第一章都没看完就发现很多错误,list被翻译成序列和列表两个名称,还有例子中的是"one"硬是被翻译成了1。
  •     书我就不评论了,没相像中的好就是快递不怎么样,说好的使用pos刷卡的,快递的非说要现金,说几十块不带pos机,这服务。。早知道我还不如支付宝支付呢
  •     4星是给卓越的。这书就值1星。内容不通顺,没有条理。翻译的跟用google翻译的没什么两样。这本书是我买的最差一本,没有之一
  •     粗略的翻过..算是明白了一点python的灵活性..有用的需要时再详读把..
  •     grest
  •     原书不错,内容较广,讲到了不少微妙的地方,可惜有些还是没提到。初学者先在网上看点教程吧。话说这本书的翻译太让人无语了。我也翻译过点东西,也知道翻译吃力不讨好,但这书有些地方也未免太不应该了,漏译错译太多了。有条件的应该直接看英文。一般不打差评的,第一次啊。
  •     感觉里面知识很多,已经学过一点Python了,现在就是系统的过一遍,做些笔记了
  •     非常好的一本书!内容详尽!!!
  •     翻译的实在太差了,感觉是用工具翻出来的。这本书的编辑要好好反省一下,怎么找到译者
  •     书里面有几页纸没有裁剪好,应该是漏裁剪了,但是漏裁剪这个问题应该很容易发现的,怎么印刷时和发货时都没有看一下呢。
  •     没看完,讲解很详细,但太学院派,属于大块头工具书的典型代表。需要时拿来翻翻即可,不推荐以此书作为入门。翻译得很糟糕。
  •     有机会一定要买本原版的看啊,第三页就找到错误了。翻译的也蛮搞笑
  •     新手上路,学习一下
  •     这孙子的书永远是这样,丢一大段代码,然后轻描淡写的介绍一下。中文版还他妈是非等宽字体,看着都累。
  •     还结合了不少编程技术,由浅到深,也适合参考。
  •     比较喜欢的作者.
    虽然是开发指南, 但是内容很有深度.
    刚开始看.
  •     书很不错,但是作为入门教材,本人不大适应这种叙述结构。。。
  •     Python 3程序开发指南(第2版)
 

婴儿读物,安全科学,领袖首脑,英语专项训练,水产渔业,世界各国文化,研究生/本专科,体育理论与教学图书下载,。 PDF图书下载网 

PDF图书下载网 @ 2019