书籍详情

Python 3 面向对象编程(第2版)

Python 3 面向对象编程(第2版)

作者:[加] Dusty Phillips(达斯帝-菲利普斯) 著,孙雨生 译

出版社:电子工业出版社

出版时间:2018-06-01

ISBN:9787121341366

定价:¥99.00

购买这本书可以去
内容简介
  本书主要介绍如何使用Python 3进行面向对象编程。1~4章介绍面向对象这一编程范式的基本准则,以及Python是如何运用这些准则实现面向对象编程的;第5~8章,介绍如何利用Python中的内置函数快速、简单地实现面向对象编程;第9~11章介绍了许多面向对象编程中常用的设计模式,以及如何使用符合 Python 语言习惯的方式来实现这些设计模式;最后第12、13章介绍了Python 3中并发编程相关的主题。本书中每一章都会包含一节案例学习的内容,通过一个实践相关的案例将本章介绍的主要内容以及前面章节中介绍过的内容串联起来。除此之外,每一章最后的练习旨在指导你利用本章学习到的内容,使用面向对象编程改善以往项目中的代码,并进一步掌握如何在合适的时机使用Python 3进行面向对象编程。
作者简介
  Dusty Philips是一位来自加拿大的软件开发者和作者,现居于华盛顿西雅图。作者在过去15年间活跃于开源社区并主要以Python作为开发语言。他是著名的Puget Sound Programming Python会议组的共同创始人,如果你在附近区域欢迎前往参加相关会议。《Python 3面向对象编程》由Packt出版社出版,这是他的**本书。他同时也创作了书籍《用Kivy创建应用》(O'Reilly),介绍关于Python的移动开发库。同时其发布了Hacking Happy,介绍技术人员的精神健康之旅。他曾在本书第1版出版之后不久因为自杀倾向而入院治疗,并自此成为积极精神健康的公开倡导者。Dusty Philips是一位来自加拿大的软件开发者和作者,现居于华盛顿西雅图。作者在过去15年间活跃于开源社区并主要以Python作为开发语言。他是著名的Puget Sound Programming Python会议组的共同创始人,如果你在附近区域欢迎前往参加相关会议。《Python 3面向对象编程》由Packt出版社出版,这是他的**本书。他同时也创作了书籍《用Kivy创建应用》(O'Reilly),介绍关于Python的移动开发库。同时其发布了Hacking Happy,介绍技术人员的精神健康之旅。他曾在本书第1版出版之后不久因为自杀倾向而入院治疗,并自此成为积极精神健康的公开倡导者。
目录
第1章 面向对象设计 1
面向对象 1
对象和类 3
指定属性和行为 5
数据描述对象 5
行为就是动作 7
隐藏细节并创建公共接口 8
组合 11
继承 13
继承提供抽象 15
多重继承 16
案例学习 16
练习 24
总结 24
第2章 Python对象 26
创建Python类 26
添加属性 28
让它做点什么 29
初始化对象 32
自我解释 34
模块和包 36
组织模块 38
组织模块内容 41
谁可以访问我的数据 44
第三方库 46
案例学习 48
练习 56
总结 57
第3章 对象相似时 58
基本的继承 58
扩展内置对象 60
重写和super 62
多重继承 63
钻石型继承问题 66
不同集合的参数 71
多态 74
抽象基类 77
使用抽象基类 77
创建抽象基类 78
魔术揭秘 80
案例学习 82
练习 95
总结 95
第4章 异常捕获 96
抛出异常 96
抛出一个异常 98
异常的作用 99
处理异常 101
异常的层级 106
定义我们自己的异常 108
案例学习 112
练习 122
总结 123
第5章 何时使用面向对象编程 124
将对象看作对象 124
通过属性向类数据添加行为 128
属性的细节 131
装饰器――另一种创建属性的方法 133
决定何时使用属性 134
管理员对象 136
移除重复代码 139
实践 141
案例学习 144
练习 152
总结 153
第6章 Python数据结构 154
空对象 154
元组和命名元组 155
命名元组 157
字典 159
字典用例 162
使用defaultdict 163
列表 166
列表排序 168
集合 171
扩展内置类型 175
队列 180
FIFO队列 181
LIFO队列 183
优先级队列 184
案例学习 186
练习 193
总结 194
第7章 Python面向对象的捷径 195
Python内置函数 195
len()函数 195
反转函数 196
枚举 198
文件I/O 199
放在上下文管理器中 201
方法重载的另一种方式 203
默认参数 204
变量参数列表 206
参数解包 209
函数也是对象 210
将函数作为属性 215
可调用对象 216
案例学习 217
练习 224
总结 225
第8章 字符串与序列化 226
字符串 226
字符串操作 227
字符串格式化 229
字符串是Unicode 236
可变字节字符串 240
正则表达式 241
匹配模式 242
从正则表达式中获取信息 246
序列化对象 249
自定义序列化 251
序列化Web对象 253
案例学习 256
练习 262
总结 263
第9章 迭代器模式 265
设计模式简介 265
迭代器 266
迭代器协议 266
推导 269
列表推导 269
集合与字典推导 271
生成器表达式 272
生成器 274
从另一个可迭代对象中产生 277
协程 279
回到日志解析 282
关闭协程并抛出异常 285
协程、生成器与函数的关系 285
案例学习 286
练习 293
总结 294
第10章 Python设计模式I 295
装饰器模式 295
装饰器的例子 296
Python中的装饰器 299
观察者模式 301
观察者模式的例子 302
策略模式 304
策略模式的例子 305
Python中的策略 307
状态模式 307
状态模式的例子 308
状态与策略 314
状态转换作为协程 314
单例模式 315
单例模式的实现 315
模板模式 319
模板模式的例子 319
练习 323
总结 324
第11章 Python设计模式II 325
适配器模式 325
门面模式 328
享元模式 331
命令模式 335
抽象工厂模式 340
复合模式 344
练习 349
总结 350
第12章 测试面向对象程序 351
为什么要测试 351
测试驱动开发 353
单元测试 354
断言方法 355
减少模板代码并进行清理 357
组织和运行测试 359
忽略失败的测试 359
用py.test进行测试 361
一种完成设置和清理的方式 363
一种完全不同的设置变量的方式 366
在py.test中跳过测试 370
模拟昂贵的对象 371
多少测试才足够 375
案例学习 378
实现它 379
练习 384
总结 385
第13章 并发 386
线程 386
线程的诸多问题 390
线程的超常开支 391
多进程 392
多进程池 394
队列 396
多进程的问题 398
Future对象 398
AsyncIO 401
AsyncIO实践 402
读取AsyncIO中的Future对象 403
在网络编程中使用AsyncIO 404
用executor封装阻塞代码 407
流 409
案例学习 410
练习 416
总结 417
猜您喜欢

读书导航