流畅的pythonPDF⾼清版
私信⼩编:学习 获取资料呀~
推荐指数:✩✩✩✩✩
内容简介 · · · · · ·
【技术⼤咖推荐】
“很荣幸担任这本优秀图书的技术审校。这本书能帮助很多中级Python程序员掌握这门语⾔,我也从中学
到了相当多的知识!”——Alex Martelli,Python软件基⾦会成员
“对于想要扩充知识的中级和⾼级Python程序员来说,这本书是充满了实⽤编程技巧的宝藏。”——Daniel Greenfeld和Audrey Roy Greenfeld,Two Scoops of Django作者
【本书特⾊】
本书由奋战在Python开发⼀线近20年的Luciano Ramalho执笔,Victor Stinner、Alex Martelli等Python⼤咖担纲技术审稿⼈,从语⾔设计层⾯剖析编程细节,兼顾Python 3和Python 2,告诉你Python中不亲⾃动⼿实践就⽆法理解的语⾔陷阱成因和解决之道,教你写出风格地道的Python代码。
● Python数据模型:理解为什么特殊⽅法是对象⾏为⼀致的关键。
● 数据结构:充分利⽤内置类型,理解Unicode⽂本和字节⼆象性。
● 把函数视作对象:把Python函数视作⼀等对象,并了解这⼀点对流⾏的设计模式的影响。
● ⾯向对象习惯⽤法:通过构建类学习引⽤、可变性、接⼝、运算符重载和多重继承。
● 控制流程:学习使⽤上下⽂管理器、⽣成器、协程,以及通过concurrent.futures和asyncio包实现的并发。
● 元编程:理解特性、描述符、类装饰器和元类的⼯作原理。
【主要内容】
本书致⼒于帮助Python开发⼈员挖掘这门语⾔及相关程序库的优秀特性,避免重复劳动,同时写出简洁、流畅、易读、易维护,并且具有地道Python风格的代码。本书尤其深⼊探讨了Python语⾔的⾼级⽤法,涵盖数据结构、Python风格的对象、并⾏与并发,以及元编程等不同的⽅⾯。
本书适合中⾼级Python软件开发⼈员阅读参考。
【译者简介】
安道
专注于现代计算机技术的⾃由翻译,译有《Flask Web 开发》《Python ⽹络编程攻略》《Ruby on Rails 教程》等书。
吴珂
现为Airbnb公司软件⼯程师,所在团队主要负责开发和维护各类可伸缩、⾼性能服务,并在Airbnb内
推⼴⾯向服务的系统架构。在分布式系统、云存储服务和跨平台SDK开发,以及⼤规模数据处理等⽅⾯有多年经验。
作者简介 · · · · · ·
Luciano Ramalho,从1998年起就成为了Python程序员。他是Python软件基⾦会的成员,Python.pro.br(巴西的⼀家培训公司)的共同所有者,还是巴西第⼀个众创空间Garoa Hacker Clube的联合创始⼈。他领导过多个软件开发团队,还在巴西的媒体、银⾏和政府部门教授Python 课程。
⽬录 · · · · · ·
前⾔ xvii
第⼀部分 序幕
第1章 Python 数据模型 2
1.1 ⼀摞 Python 风格的纸牌 3
1.2 如何使⽤特殊⽅法 6
1.2.1 模拟数值类型 7
1.2.2 字符串表⽰形式 9
1.2.3 算术运算符 10
1.2.4 ⾃定义的布尔值 10
1.3 特殊⽅法⼀览 10
1.4 为什么 len 不是普通⽅法 12
1.5 本章⼩结 12
1.6 延伸阅读 13
第⼆部分 数据结构
第2章 序列构成的数组 16
2.1 内置序列类型概览 17
2.2 列表推导和⽣成器表达式 18最好的python入门教材>table怎么读的拼音的汉字
2.2.1 列表推导和可读性 18
2.2.2 列表推导同 filter 和 map 的⽐较 20
2.2.3 笛卡⼉积 20
2.2.4 ⽣成器表达式 21
2.3 元组不仅仅是不可变的列表 22
2.3.1 元组和记录 23
2.3.2 元组拆包 23
2.3.3 嵌套元组拆包 25
2.3.4 具名元组 26
2.3.5 作为不可变列表的元组 27
2.4 切⽚ 28
2.4.1 为什么切⽚和区间会忽略最后⼀个元素 28 2.4.2 对对象进⾏切⽚ 29
2.4.3 多维切⽚和省略 30
2.4.4 给切⽚赋值 31
2.5 对序列使⽤ + 和 * 31
2.6 序列的增量赋值 33
2.7 list.sort ⽅法和内置函数 sorted 36
2.8 ⽤ bisect 来管理已排序的序列 37
2.8.1 ⽤ bisect 来搜索 38
2.8.2 ⽤ bisect.insort 插⼊新元素 40
2.9 当列表不是⾸选时 41
2.9.1 数组 41
2.9.2 内存视图 44
2.9.3 NumPy 和 SciPy 45
2.9.4 双向队列和其他形式的队列 47
2.10 本章⼩结 49
2.11 延伸阅读 50
第3章 字典和集合 54
3.1 泛映射类型 54
3.2 字典推导 56
3.3 常见的映射⽅法 57
3.4 映射的弹性键查询 61
3.4.1 defaultdict :处理不到的键的⼀个选择 61
3.4.2 特殊⽅法 __missing__ 62
3.5 字典的变种 65
3.6 ⼦类化 UserDict 65
3.7 不可变映射类型 67
3.8 集合论 68
3.8.1 集合字⾯量 69
3.8.2 集合推导 71
3.8.3 集合的操作 71
wxappunpacker下载3.9 dict 和 set 的背后 73
3.9.1 ⼀个关于效率的实验 74
3.9.2 字典中的散列表 75
3.9.3 dict 的实现及其导致的结果 78
3.9.4 set 的实现以及导致的结果 80
3.10 本章⼩结 80
3.11 延伸阅读 81
textbox滚动条怎么用第4章 ⽂本和字节序列 83
4.1 字符问题 84
4.2 字节概要 85
4.3 基本的编解码器 88
4.4 了解编解码问题 89
4.4.1 处理 UnicodeEncodeError 90
4.4.2 处理 UnicodeDecodeError 90
4.4.3 使⽤预期之外的编码加载模块时抛出的 SyntaxError 91 4.4.4 如何出字节序列的编码 92
4.4.5 BOM:有⽤的⿁符 93
4.5 处理⽂本⽂件 94
4.6 为了正确⽐较⽽规范化 Unicode 字符串 99
4.6.1 ⼤⼩写折叠 101
4.6.2 规范化⽂本匹配实⽤函数 102debate的用法及短语
用php制作动态网站4.6.3 极端“规范化”:去掉变⾳符号 103 4.7 Unicode ⽂本排序 105
4.8 Unicode 数据库 108
4.9 ⽀持字符串和字节序列的双模式 API 109 4.9.1 正则表达式中的字符串和字节序列 109 4.9.2 os 函数中的字符串和字节序列 111
4.10 本章⼩结 112
4.11 延伸阅读 113
第三部分 把函数视作对象
第5章 ⼀等函数 118
5.1 把函数视作对象 119
5.2 ⾼阶函数 120
5.3 匿名函数 122
5.4 可调⽤对象 122
5.5 ⽤户定义的可调⽤类型 123
5.6 函数内省 124
5.7 从定位参数到仅限关键字参数 126
5.8 获取关于参数的信息 127
5.9 函数注解 131
5.10 ⽀持函数式编程的包 132
5.10.1 operator 模块 132
5.10.2 使⽤ functools.partial 冻结参数 135 5.11 本章⼩结 137
5.12 延伸阅读 137
第6章 使⽤⼀等函数实现设计模式 141
6.1 案例分析:重构“策略”模式 142
6.1.1 经典的“策略”模式 142
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论