Python中文网

深入理解Python特性

cnpython1017

深入理解Python特性这本书,是由人民邮电出版社在2019-06-01月出版的,本书著作者是 [德] 达恩·巴德尔(Dan Bader) 著,孙波翔 译,此次本版是第1次印刷发行, 国际标准书号(ISBN):9787115511546,品牌为人民邮电出版社, 这本书的包装是16开平装,所用纸张为胶版纸,全书共有163页字数万字, 是一本非常不错的Python编程书籍。

此书内容摘要

本书致力于帮助Python开发人员挖掘这门语言及相关程序库的优秀特性,避免重复劳动,同时写出简洁、流畅、易读、易维护的代码。用好Python需要了解的*重要的特性、Python 2过渡到Python 3需要掌握的现代模式、有其他编程语言背景想快速上手Python的程序员需要特别注意的问题,等等,本书都可以解决。

关于此书作者

达恩·巴德尔(Dan Bader)

影响全球1 000 000以上程序员的PythonistaCafe社区创始人,Real Python培训机构总编,拥有近20年软件开发经验。巴德尔毕业于欧洲历史悠久的慕尼黑工业大学,该校以优异的科教质量闻名,到2018年已经培养出17位诺贝尔奖得主。

编辑们的推荐

* 学习用Python断言自动检测程序错误
* 合理使用格式化和逗号维护列表、字典和集合
* 深入理解Python的头等对象——函数
* 使用__str__和__repr__双下划线方法自行控制类中的字符串转换
* namedtuple如何更好地组织数据结构
……
掌握的Python技巧多一点儿,写出来的Python代码性能高一截儿。 :)

深入理解Python特性图书的目录

第 1章简介1
1.1什么是Python技巧1
1.2本书作用2
1.3如何阅读本书2
第2章 Python整洁之道4
2.1用断言加一层保险4
2.1.1示例:Python中的断言4
2.1.2为什么不用普通的异常来处理6
2.1.4常见陷阱6
2.1.5Python断言总结9
2.1.6关键要点9
2.2巧妙地放置逗号9
2.3上下文管理器和with语句11
2.3.1在自定义对象中支持with12
2.3.2用上下文管理器编写漂亮的API13
2.3.3关键要点15
2.4下划线、双下划线及其他15
2.4.1前置单下划线:_var15
2.4.2后置单下划线:var_17
2.4.3前置双下划线:__var17
2.4.4前后双下划线:__var__20
2.4.5单下划线:_21
2.4.6关键要点22
2.5字符串格式化中令人震惊的真相22
2.5.1第 一种方法:“旧式”字符串格式化22
2.5.2第二种方法:“新式”字符串格式化23
2.5.3第三种方法:字符串字面值插值(Python 3.6+)24
2.5.4第四种方法:模板字符串25
2.5.5如何选择字符串格式化方法26
2.5.6关键要点27
2.6“Python之禅”中的彩蛋27
第3章高效的函数28
3.1函数是Python的头等对象28
3.1.1函数是对象28
3.1.2函数可存储在数据结构中29
3.1.3函数可传递给其他函数30
3.1.4函数可以嵌套31
3.1.5函数可捕捉局部状态32
3.1.6对象也可作为函数使用33
3.1.7关键要点33
3.2lambda是单表达式函数34
3.2.1lambda的使用场景35
3.2.2不应过度使用lambda36
3.2.3关键要点36
3.3装饰器的力量37
3.3.1Python装饰器基础38
3.3.2装饰器可以修改行为39
3.3.3将多个装饰器应用于一个函数41
3.3.5如何编写“可调试”的装饰器44
3.4有趣的*args和**kwargs44
3.4.1传递可选参数或关键字参数45
3.4.2关键要点46
3.5函数参数解包47
3.6返回空值48
第4章类与面向对象51
4.1对象比较:is 与==51
4.2字符串转换(每个类都需要__repr__)52
4.2.1__str__与__repr__54
4.2.2为什么每个类都需要__repr__55
4.2.3Python 2.x的差异:__unicode__57
4.2.4关键要点58
4.3定义自己的异常类58
4.4克隆对象60
4.4.1制作浅副本61
4.4.2制作深副本62
4.4.3复制任意对象63
4.4.4关键要点65
4.5用抽象基类避免继承错误65
4.6namedtuple的优点67
4.6.1namedtuple上场68
4.6.2子类化namedtuple70
4.6.3内置的辅助方法70
4.6.4何时使用namedtuple71
4.6.5关键要点71
4.7类变量与实例变量的陷阱72
4.7.1与狗无关的例子74
4.7.2关键要点75
4.8实例方法、类方法和静态方法揭秘75
4.8.1实例方法76
4.8.2类方法76
4.8.3静态方法76
4.8.4在实践中探寻77
4.8.5使用@classmethod的Pizza工厂类78
4.8.6什么时候使用静态方法80
4.8.7关键要点81
第5章Python中常见的数据结构82
5.1字典、映射和散列表83
5.1.1dict——首选字典实现83
5.1.2collections.OrderedDict——能记住键的插入顺序84
5.1.3collections.defaultdict——为缺失的键返回默认值85
5.1.4collections.ChainMap——搜索多个字典85
5.1.5types.MappingProxyType——用于创建只读字典86
5.1.6Python中的字典:总结86
5.1.7关键要点87
5.2数组数据结构87
5.2.1列表——可变动态数组88
5.2.2元组——不可变容器88
5.2.3array.array——基本类型数组89
5.2.4str——含有Unicode 字符的不可变数组90
5.2.5bytes——含有单字节的不可变数组91
5.2.6bytearray——含有单字节的可变数组91
5.2.7关键要点92
5.3记录、结构体和纯数据对象93
5.3.1字典——简单数据对象93
5.3.2元组——不可变对象集合94
5.3.3编写自定义类——手动精细控制96
5.3.4collections.namedtuple——方便的数据对象96
5.3.5typing.NamedTuple——改进版namedtuple97
5.3.6struct.Struct——序列化C结构体98
5.3.7types.SimpleNamespace——花哨的属性访问99
5.3.8关键要点99
5.4集合和多重集合100
5.4.1set——首选集合实现101
5.4.2frozenset——不可变集合101
5.4.3collections.Counter——多重集合101
5.4.4关键要点102
5.5栈(后进先出)102
5.5.1列表——简单的内置栈103
5.5.2collections.deque——快速且稳健的栈104
5.5.3queue.LifoQueue——为并行计算提供锁语义104
5.5.4比较Python 中各个栈的实现105
5.6队列(先进先出)106
5.6.1列表——非常慢的队列107
5.6.2collections.deque——快速和稳健的队列107
5.6.3queue.Queue——为并行计算提供的锁语义108
5.6.4multiprocessing.Queue——共享作业队列108
5.6.5关键要点109
5.7优先队列109
5.7.1列表——手动维护有序队列110
5.7.3queue.PriorityQueue——美丽的优先级队列111
5.7.4关键要点111
第6章循环和迭代112
6.1编写Python式的循环112
6.2理解解析式114
6.3列表切片技巧与寿司操作员116
6.4美丽的迭代器118
6.4.1无限迭代119
6.4.2for-in循环在Python中的工作原理121
6.4.3更简单的迭代器类122
6.4.4不想无限迭代123
6.4.5Python 2.x兼容性125
6.4.6关键要点126
6.5生成器是简化版迭代器126
6.5.1无限生成器126
6.5.2能够停下来的生成器128
6.5.3关键要点130
6.6生成器表达式130
6.6.1生成器表达式与列表解析式132
6.6.3内联生成器表达式133
6.6.4物极必反133
6.6.5关键要点134
6.7迭代器链134
第7章字典技巧137
7.1字典默认值137
7.2字典排序139
7.3用字典模拟switch/case语句141
7.4“最疯狂”的字典表达式144
7.5合并词典的几种方式148
7.6美观地输出字典149
第8章Python式高效技巧152
8.1探索Python的模块和对象152
8.2用virtualenv隔离项目依赖关系154
8.2.1使用虚拟环境155
8.2.2关键要点157
8.3在字节码后一窥究竟157
第9章结语161
9.1针对Python开发者免费每周提示161
9.2PythonistaCafe:Python开发人员的社区162

部分内容试读

暂无.

关于此书评价

暂无.

书摘内容

暂无.

深入理解Python特性最新最全的试读、书评、目录、简介信息由Python中文网整理提供。

上一篇:没有了

下一篇:Python编程锦囊(全彩版)