所属网站分类: 资源下载 > python电子书


作者:goodbody

原文链接: http://www.pythonheidong.com/blog/article/474/

来源:python黑洞网 www.pythonheidong.com

内容简介

Python是一种面向对象、解释型的程序设计语言,它已经被成功应用于科学计算、数据分析以及游戏开发等诸多领域。

本书深入介绍Python语言的面向对象特性,全书分3个部分共18章。第1部分讲述用特殊方法实现Python风格的类,分别介绍了__init__()方法、与Python无缝集成—基本特殊方法、属性访问和特性及修饰符、抽象基类设计的一致性、可调用对象和上下文的使用、创建容器和集合、创建数值类型、装饰器和mixin—横切方面;第2部分讲述持久化和序列化,分别介绍了序列化和保存、用Shelve保存和获取对象、用SQLite保存和获取对象、传输和共享对象、配置文件和持久化;第3部分讲述测试、调试、部署和维护,分别介绍了Logging和Warning模块、可测试性的设计、使用命令行、模块和包的设计、质量和文档。

本书深入剖析Python,帮助读者全面掌握Python并构建出更好的应用程序,非常适合对Python语言有一定了解并想要深入学习Python的读者,也适合有一定开发经验并且想要尝试使用Python语言进行编程的IT从业人员

目录

第1部分用特殊方法实现Python风格的类1
第1章__init__()方法5
1.1隐式的基类——object5
1.2基类中的__init__()方法6
1.3在基类中实现__init__()方法7
1.4使用__init__()方法创建常量清单8
1.5通过工厂函数调用__init__()9
1.5.1错误的工厂设计和模糊的else语句10
1.5.2使用elif简化设计来获得一致性11
1.5.3使用映射和类来简化设计11
1.6在每个子类中实现__init__()方法14
1.7简单的组合对象16
1.7.1封装集合类16
1.7.2扩展集合类17
1.7.3可适应更多需求的另一种设计17
1.8复合的组合对象18
1.9不带__init__()方法的无状态对象19
1.10一些其他的类定义20
1.11多策略的__init__()方法22
1.11.1更复杂的初始化方式23
1.11.2静态函数的初始化24
1.12更多的__init__()技术24
1.12.1带有类型验证的初始化26
1.12.2初始化、封装和私有化28
1.13总结29
第2章与Python无缝集成——基本特殊方法30
2.1__repr__()和__str__()方法30
2.1.1非集合对象的__str__()和__repr__()31
2.1.2集合中的__str__()和__repr__()32
2.2__format__()方法33
2.2.1内嵌格式规范34
2.2.2集合和委托格式规范35
2.3__hash__()方法35
2.3.1决定哈希的对象36
2.3.2有关不可变对象和继承的默认行为37
2.3.3重载不可变对象39
2.3.4重载可变对象40
2.3.5从可变的Hand类中生成一个不可变的Hand类41
2.4__bool__()方法43
2.5__bytes__()方法44
2.6比较运算符方法45
2.6.1设计比较运算47
2.6.2实现同一个类的对象比较48
2.6.3实现不同类的对象比较49
2.6.4硬总和、软总和及多态50
2.6.5不同类比较的例子51
2.7__del__()方法53
2.7.1引用计数和对象销毁54
2.7.2循环引用和垃圾回收55
2.7.3循环引用和weakref模块56
2.7.4__del__()和close()方法58
2.8__new__()方法和不可变对象58
2.9__new__()方法和元类型59
2.9.1元类型示例1——有序的属性60
2.9.2元类型示例2——自引用61
2.10总结64
第3章属性访问、特性和修饰符66
3.1属性的基本操作66
3.2创建特性68
3.2.1主动计算特性70
3.2.2setter和deleter特性71
3.3使用特殊方法完成属性访问72
3.3.1使用__slots__创建不可变对象73
3.3.2使用tuple子类创建不可变对象74
3.3.3主动计算的属性75
3.4__getattribute__()方法77
3.5创建修饰符78
3.5.1使用非数据修饰符80
3.5.2使用数据修饰符81
3.6总结、设计要素和折中方案83
3.6.1特性与属性对比83
3.6.2修饰符的设计84
3.6.3展望84
第4章抽象基类设计的一致性85
4.1抽象基类85
4.2基类和多态87
4.3可调用对象88
4.4容器和集合88
4.5数值类型89
4.6其他的一些抽象基类90
4.6.1迭代器的抽象基类90
4.6.2上下文和上下文管理器91
4.7abc模块92
4.8总结、设计要素和折中方案93
第5章可调用对象和上下文的使用95
5.1使用ABC可调用对象来进行设计95
5.2提高性能97
5.3使用functools完成记忆化99
5.4可调用API和复杂性100
5.5管理上下文和with语句102
5.5.1使用小数上下文103
5.5.2其他上下文104
5.6定义__enter__()和__exit__()方法104
5.7上下文管理器工厂105
5.8总结107
5.8.1可调用对象的设计要素和折中方案108
5.8.2上下文管理器的设计要素和折中方案108
5.8.3展望109
第6章创建容器和集合110
6.1集合的抽象基类110
6.2特殊方法示例111
6.3使用标准库的扩展112
6.3.1namedtuple()函数112
6.3.2deque类114
6.3.3使用ChainMap115
6.3.4OrderedDict集合116
6.3.5defaultdict子类118
6.3.6counter集合119
6.4创建新集合120
6.5定义一种新的序列121
6.5.1一个用于统计的list122
6.5.2主动计算和延迟计算122
6.5.3使用__getitem__()、__setitem__()、__delitem__()和slice操作125
6.5.4实现__getitem__()、__setitem__()和__delitem__()126
6.5.5封装list和委托127
6.5.6用__iter__()创建迭代器129
6.6创建一种新的映射129
6.7创建一种新的集合131
6.7.1一些设计原则132
6.7.2定义Tree类132
6.7.3定义TreeNode类133
6.7.4演示二叉树集合136
6.8总结136
6.8.1设计要素和折中方案137
6.8.2展望138
第7章创建数值类型139
7.1numbers的抽象基类139
7.1.1决定使用哪种类型141
7.1.2方法解析和运算符映射141
7.2算术运算符的特殊方法142
7.3创建一个数字类144
7.3.1FixedPoint的初始化144
7.3.2定义固定小数点位数的二进制算术运算符146
7.3.3定义FixedPoint一元算术运算符148
7.3.4实现FixedPoint反向运算符148
7.3.5实现FixedPoint比较运算符150
7.4计算一个数字的哈希值152
7.5实现其他的特殊方法153
7.6原地运算符的优化154
7.7总结155
7.7.1设计要素和折中方案155
7.7.2展望155
……
第8章装饰器和mixin——横切方面156
第2部分持久化和序列化175
第9章序列化和保存——JSON、YAML、Pickle、CSV和XML178
第10章用Shelve保存和获取对象214
第11章用SQLite保存和获取对象235
第12章传输和共享对象263
第13章配置文件和持久化
第3部分测试、调试、部署和维护
第14章Logging和Warning模块
第15章可测试性的设计
第16章使用命令行
第17章模块和包的设计
第18章质量和文档

python经典书籍推荐:Python面向对象编程指南 : Mastering Object-oriented相关推荐

  1. python经典好书-python经典书籍推荐

    互动出版网python书籍专区.为您推荐python经典书籍,学习python程序语言必读经典之作.以及关于python经典教材. 本书包括python程序设计的方方面面,首先从python的安装开始 ...

  2. python经典书籍推荐:Python核心编程

    作者:熊猫烧香 链接:www.pythonheidong.com/blog/article/27/ 来源:python黑洞网 对<Python核心编程>的褒奖 " The lon ...

  3. python经典书籍推荐-推荐10本量化Python书单,好好学习天天向上

    推荐10本量化Python书~Python非常灵活,让实验变得容易.解决简单问题的方法简单而优雅.Python为新手程序员提供了一个很好的实验室. Python具有一些特征,使其成为第一种编程语言的接 ...

  4. python视频教程唐学韬-计算机基础经典书籍推荐——Python语言

    本文根据网上的参考资料以及自己的学习经验总结整理而成,旨在给大家做一个参考,希望大家在工作.学习中遇到相关的问题之后能从这些参考书中获得帮助.下面介绍Python语言相关的参考书. Python语言 ...

  5. python经典书籍:Python编程实战 运用设计模式、并发和程序库创建高质量程序

    Python编程实战主要关注了四个方面 即:优雅编码设计模式.通过并发和编译后的Python(Cython)使处理速度更快.高层联网和图像.书中展示了在Python中已经过验证有用的设计模式,用专家级 ...

  6. python学习书籍推荐-Python语言之6本机器学习书籍推荐

    本篇文章主要讲述Python语言之6本机器学习书籍推荐,希望阅读本篇文章以后大家有所收获,帮助大家对相关内容的理解更加深入. 机器学习是实现人工智能的一种途径,它和数据开掘有一定的相似性,也是一门多领 ...

  7. python经典书籍推荐:python编码规范

    目录 INF-qa Python 编码规范............................................................................... ...

  8. python教程书籍-推荐python机器学习实践的书籍?

    直接实战的话,其实看 Scikit Learn 的官网就可以了.不仅有算法的说明,还有相关的参数文档,还有对应的案例分析,也有一些简单数据供参考.从开源的角度上讲,Scikit Learn 已经做得非 ...

  9. python经典好书-新手Python入门经典书籍推荐

    随着人工智能和大数据时代的来临,开始学习Python的朋友是越来越多了.近来就连房地产大亨潘石屹也在微博上表示,自己开始学Python了.确实在当下,无论是不是做程序员,还是在各个行业像是数据分析.运 ...

最新文章

  1. 账簿登记重要十条规则
  2. go RC4加密解密
  3. 漏洞工具:nmap和nessus
  4. java finalize 何时被调用_finalize()方法什么时候被调用?析构函数(final
  5. 微服务之SpringCloud实战(五):SpringCloud Eureka详解
  6. string StartsWith 方法 Https
  7. 在xp3下,Apache , PHP, Zend Studio怎样配置环境?
  8. 【论文阅读】显著性检测 EGNet
  9. 马克思主义基本原理知识框架图——政治经济学中各种资本的划分
  10. 2022年上半年国家教师资格证考试
  11. evolution ubuntu邮箱_linux下有什么好用的邮件客户端?
  12. 测量学7_地形图的基本知识
  13. Win10子系统错误——WslRegisterDistribution failed with error: 0x80070057
  14. 旅游路线定制APP开发是否具备发展前景呢?
  15. 【资源】这款工具让SpringBoot不再需要Controller、Service、DAO、Mapper!
  16. python3 线程 join_python 多线程 join start
  17. DELPHI HOOK随手笔记
  18. golang-基于channel实现的共享锁
  19. poco遇到的问题及解决办法
  20. Open edX 学习、开发、运维相关链接整理

热门文章

  1. 使用Forms验证存储用户自定义信息
  2. gephi生成网络关系图_路网拓扑重建专题 (3) 网络图生成
  3. 基于pytorch实现图像分类——理解自动求导、计算图、静态图、动态图、pytorch入门
  4. matlab 垂直边缘检测,matlab 边缘检测
  5. python哪个更强大_Ruby和Python哪个更强大?学习分析
  6. FPGA仿真类型简介
  7. java限制符含义_JAVA的访问控制符private,default,protected,public
  8. Openssl 嵌入式arm移植笔记
  9. 12006.eeprom之M24C02
  10. 链表在STM32中的应用