Python 3面向对象编程

Python 3面向对象编程

出版信息

[加]Dusty Phillips(达斯帝•菲利普斯) / 肖鹏、常贺、石琳 / 电子工业出版社 / 2015-6 / 79.00元

内容简介

Python 是一种面向对象的解释型语言,面向对象是其非常重要的特性。《Python 3面向对象编程》通过Python 的数据结构、语法、设计模式,从简单到复杂,从初级到高级,一步步通过例子来展示了Python 中面向对象的概念和原则。

《Python 3面向对象编程》不是Python 的入门书籍,适合具有Python 基础经验的开发人员阅读。如果你拥有其他面向对象语言的经验,你会更容易理解《Python 3面向对象编程》的内容。

作者简介

Dusty Phillips 是一名加拿大自由软件开发人员、教师、武术家以及开源爱好者。他和Arch Linux 社区以及其他开源社区有着紧密联系。他维护着Arch Linux 的门户网站以及编译了流行的Arch Linux 手册。Dusty 持有计算机科学人机交互方向的硕士学位。他目前在自己的计算机里安装了6 种不同的Python 解释器。

译者简介

肖鹏,毕业于北京理工大学信息与通信工程专业,2011年起就职于思科系统(中国)信息技术服务有限公司,是一名网络咨询工程师,具有多年Python网络开发经验。个人博客: http://www.pythoner.io/ GitHub:xiaopeng163

常贺,毕业于北京邮电大学计算机科学与技术专业,现就职于思科系统中国公司高级服务部门。他具备多年的网络监控管理系统的开发经验。

石琳,思科系统(中国)信息技术服务有限公司网络咨询工程师,具有多年python开发经验,目前从事SDN方面的技术工作。

目录

第1 章 面向对象设计 ...................................................................................................... 1
面向对象 ............................................................................................................................. 1
对象和类 ............................................................................................................................. 3
指定属性和行为 ................................................................................................................. 5
数据描述对象 ............................... ..................................................................................... 5
行为是动作 ............................................................................... .......................................... 7
隐藏细节并且创建公共接口 .............................................................................................. 8
组合和继承 ......................................................................................................................... 10
继承 ..................................................................................................................................... 12
案例学习 ............................................................................................................................. 15
练习 ..................................................................................................................................... 22
总结 ..................................................................................................................................... 23
第2 章 Python 对象 ...................................................................................................... .. 24
创建Python 类 ................................................................................................................... 24
添加属性 ............................................................................................................................. 26
让类实际做一些事情 ..................................................................................................... ... 26
对象的初始化 ..................................................................................................................... 29
解释你自己 ......................................................................................................................... 32
模块和包 ............................................................................................................................. 34
组织模块 ............................................................................................................................. 36
谁可以访问我的数据 ......................................................................................................... 41
案例学习 .......................................................................................................................... 43
练习 .................................................................................................................................. 52
总结 .................................................................................................................................. 53
第3 章 当对象是相似的 ............................................................................................... 54
基本继承 .......................................................................................................................... 54
扩展内置类 ...................................................................................................................... 56
重写和Super ..................................................................................................................... 58
多重继承 .......................................................................................................................... 59
钻石的问题 ...................................................................................................................... 61
不同的参数集合 .............................................................................................................. 66
多态 .................................................................................................................................. 68
案例学习 .......................................................................................................................... 71
练习 .................................................................................................................................. 84
总结 .................................................................................................................................. 85
第4 章 异常处理 ........................................................................................................... 86
抛出异常 .......................................................................................................................... 86
抛出一个异常 .................................................................................................................. 88
当一个异常产生时发生了什么 ...................................................................................... 90
异常处理 .......................................................................................................................... 91
异常层级 .......................................................................................................................... 97
定义自己的异常 .............................................................................................................. 98
异常不是例外 .................................................................................................................. 99
案例学习 ......................................................................................................................... 102
练习 ................................................................................................................................. 112
总结 ................................................................................................................................. 113
第5 章 何时使用面向对象编程 .................................................................................. 114
把对象当作“对象”来对待 .......................................................................................... 114
使用property 为类中的数据添加行为 ......................................................................... 118
property 是怎样工作的 .................................................................................................. 121
装饰器:创建property 的另一种方法 ..........................................................................123
何时该使用property 属性 ..............................................................................................125
管理对象 ........................................................................................................................... 127
移除重复的代码 ................................................................................................................130
实践一下 ........................................................................................................................... 131
或者我们可以使用组合 ....................................................................................................135
案例学习 ........................................................................................................................... 137
练习 ................................................................................................................................... 145
总结 ................................................................................................................................... 146
第6 章 Python 数据结构 ............................................................................................... 147
空对象 ............................................................................................................................... 147
元组和命名元组 ............................................................................................................... 148
命名元组 ........................................................................................................................... 150
字典 ................................................................................................................................... 152
何时应该使用字典 ........................................................................................................... 155
使用defaultdict ................................................................................................................. 156
列表 .................................................................................................................................. 157
对列表排序 ...................................................................................................................... 160
集合 .................................................................................................................................. 162
扩展内置数据类型 .......................................................................................................... 166
案例学习 .......................................................................................................................... 171
练习 .................................................................................................................................. 178
总结 .................................................................................................................................. 178
第7 章 Python 里面向对象的快捷方式 ...................................................................... 180
Python 内置函数 ............................................................................................................. 180
Len ...................................................................................................................................... 180
Reversed ............................................................................................................................. 181
Enumerate .......................................................................................................................... 182
Zip ....................................................................................................................................... 183
其他函数 ........................................................................................................................... 185
解析 ................................................................................................................................... 186
列表解析 ........................................................................................................................... 186
集合和字典解析 ............................................................................................................... 188
生成器表达式 ................................................................................................................... 189
生成器 ............................................................................................................................... 191
方法重载的另一种选择 ................................................................................................... 194
默认参数 ........................................................................................................................... 195
可变参数列表 ................................................................................................................... 197
参数拆分 ........................................................................................................................... 201
函数也是对象 ................................................................................................................... 202
使用函数作为属性 ........................................................................................................... 206
可调用对象 ....................................................................................................................... 207
案例学习 ........................................................................................................................... 208
练习 ................................................................................................................................... 212
总结 ................................................................................................................................... 213
第8 章 设计模式1 .......................................................................................................... 214
设计模式 ........................................................................................................................... 214
装饰器模式 ....................................................................................................................... 215
装饰器实例 ....................................................................................................................... 216
Python 中的装饰器模式 ................................................................................................. 219
观察者模式 ...................................................................................................................... 221
观察者实例 ...................................................................................................................... 222
策略模式 .......................................................................................................................... 224
策略实例 .......................................................................................................................... 225
Python 中的策略模式 .....................................................................................................226
状态模式 .......................................................................................................................... 227
状态实例 .......................................................................................................................... 227
状态和策略模式的对比 ...................................................................................................233
单件模式 .......................................................................................................................... 234
单件的实现方式 ..............................................................................................................234
模块变量能够模仿单件 ..................................................................................................235
模板模式 ......................................................................................................................... 238
模板实例 ......................................................................................................................... 238
练习 ................................................................................................................................. 242
总结 ................................................................................................................................. 243
第9 章 设计模式2 ........................................................................................................ 244
适配器模式 ..................................................................................................................... 244
外观模式 ......................................................................................................................... 247
享元模式 ......................................................................................................................... 250
命令模式 ......................................................................................................................... 254
抽象工厂模式 ................................................................................................................. 259
组合模式 ......................................................................................................................... 263
练习 ................................................................................................................................. 267
总结 ................................................................................................................................. 268
第10 章 文件和字符串 ................................................................................................ 270
字符串 ............................................................................................................................. 270
字符串操作 ..................................................................................................................... 271
字符串格式化 ................................................................................................................. 274
字符串是Unicode 的 .................................................................................................... 281
可变字节字符串 ............................................................................................................ 285
文件I/O ........................................................................................................................... 286
把它放在上下文 ............................................................................................................ 287
伪造文件 ....................................................................................................................... 289
存储对象 ....................................................................................................................... 290
定制pickle ...................................................................................................................... 292
序列化Web 对象 ......................................................................................................... 294
练习 ............................................................................................................................... 297
总结 ............................................................................................................................... 299
第11 章 测试面向对象的程序 .................................................................................. 300
为什么要测试 ............................................................................................................... 300
测试驱动开发 ............................................................................................................... 302
单元测试 ....................................................................................................................... 303
断言方法 ....................................................................................................................... 304
减少样板和清理 ........................................................................................................... 306
组织和运行测试 ........................................................................................................... 308
忽略失败的测试 ........................................................................................................... 309
用py.test 测试 ............................................................................................................. 311
一个处理安装和清理的方法 ....................................................................................... 313
一种完全不同的变量设置方式 ................................................................................... 316
用py.test 跳过测试 ..................................................................................................... 320
py.test 的补充 .............................................................................................................. 321
多少测试才算够 .......................................................................................................... 323
案例学习 ...................................................................................................................... 326
实现它 ....................................................................................................................... 327
练习 .......................................................................................................................... 332
总结 .......................................................................................................................... 333
第12 章 常用Python 3 库 .................................................................................... 334
数据库访问 .............................................................................................................. 335
引入SQLAlchemy ...................................................................................................... 336
漂亮的用户界面 ...................................................................................................... 340
TkInter ........................................................................................................................ 341
PyQt ........................................................................................................................... 345
选择一个GUI 工具包 ............................................................................................. 347
XML ............................................................................................................................ 348
ElementTree ............................................................................................................... 349
Lxml ........................................................................................................................... 353
CherryPy .................................................................................................................... 354
一个完整的Web 堆栈 ........................................................................................... 357
练习 ......................................................................................................................... 363
总结 ......................................................................................................................... 364

本文地址:https://www.codercto.com/books/d/200.html

HTML 压缩/解压工具

HTML 压缩/解压工具

在线压缩/解压 HTML 代码

Markdown 在线编辑器

Markdown 在线编辑器

Markdown 在线编辑器

UNIX 时间戳转换

UNIX 时间戳转换

UNIX 时间戳转换