注册 登录 进入教材巡展
#

出版时间:2019-06

出版社:人民邮电出版社

以下为《深入理解Python特性》的配套数字资源,这些资源在您购买图书后将免费附送给您:
  • 人民邮电出版社
  • 9787115511546
  • 300913
  • 2019-06
  • TP311.561
内容简介
本书致力于帮助Python开发人员挖掘这门语言及相关程序库的特性,避免重复劳动,同时写出简洁、流畅、易读、易维护的代码。

用好Python需要了解的zui重要的特性、Python 2过渡到Python 3需要掌握的现代模式、有其他编程语言背景想快速上手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

deredDict——能记住键的插入顺序84

faultdict——为缺失的键返回默认值85

ainMap——搜索多个字典85

ppingProxyType——用于创建只读字典86

5.1.6Python中的字典:总结86

5.1.7关键要点87

5.2数组数据结构87

5.2.1列表——可变动态数组88

5.2.2元组——不可变容器88

ray——基本类型数组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

dtuple——方便的数据对象96

dTuple——改进版namedtuple97

ruct——序列化C结构体98

mpleNamespace——花哨的属性访问99

5.3.8关键要点99

5.4集合和多重集合100

5.4.1set——*选集合实现101

5.4.2frozenset——不可变集合101

unter——多重集合101

5.4.4关键要点102

5.5栈(后进先出)102

5.5.1列表——简单的内置栈103

que——快速且稳健的栈104

foQueue——为并行计算提供锁语义104

5.5.4比较Python 中各个栈的实现105

5.6队列(先进先出)106

5.6.1列表——非常慢的队列107

que——快速和稳健的队列107

eue——为并行计算提供的锁语义108

eue——共享作业队列108

5.6.5关键要点109

5.7优先队列109

5.7.1列表——手动维护有序队列110

iorityQueue——美丽的优先级队列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“zui疯狂”的字典表达式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
Baidu
map