4.8 用户推荐指数
科技
类型
8.5
豆瓣评分
可以朗读
语音朗读
138千字
字数
2019-06-01
发行日期
展开全部
主编推荐语
本书不是简单的代码片段合集,而是能让你深入理解Python的内在原理,并欣赏其优美之处。
内容简介
本书致力于帮助Python开发人员挖掘这门语言及相关程序库的优秀特性,避免重复劳动,同时写出简洁、流畅、易读、易维护的代码。用好Python需要了解的最重要的特性、Python2过渡到Python3需要掌握的现代模式、有其他编程语言背景想快速上手Python的程序员需要特别注意的问题,等等,本书都可以解决。
目录
- 版权信息
- Python高手对本书的评论
- 序
- 第1章 简介
- 1.1 什么是Python技巧
- 1.2 本书作用
- 1.3 如何阅读本书
- 第2章 Python整洁之道
- 2.1 用断言加一层保险
- 2.1.1 示例:Python中的断言
- 2.1.2 为什么不用普通的异常来处理
- 2.1.3 Python的断言语法
- 2.1.4 常见陷阱
- 2.1.5 Python断言总结
- 2.1.6 关键要点
- 2.2 巧妙地放置逗号
- 关键要点
- 2.3 上下文管理器和with语句
- 2.3.1 在自定义对象中支持with
- 2.3.2 用上下文管理器编写漂亮的API
- 2.3.3 关键要点
- 2.4 下划线、双下划线及其他
- 2.4.1 前置单下划线:_var
- 2.4.2 后置单下划线:var_
- 2.4.3 前置双下划线:__var
- 2.4.4 前后双下划线:__var__
- 2.4.5 单下划线:_
- 2.4.6 关键要点
- 2.5 字符串格式化中令人震惊的真相
- 2.5.1 第一种方法:“旧式”字符串格式化
- 2.5.2 第二种方法:“新式”字符串格式化
- 2.5.3 第三种方法:字符串字面值插值(Python 3.6+)
- 2.5.4 第四种方法:模板字符串
- 2.5.5 如何选择字符串格式化方法
- 2.5.6 关键要点
- 2.6 “Python之禅”中的彩蛋
- 第3章 高效的函数
- 3.1 函数是Python的头等对象
- 3.1.1 函数是对象
- 3.1.2 函数可存储在数据结构中
- 3.1.3 函数可传递给其他函数
- 3.1.4 函数可以嵌套
- 3.1.5 函数可捕捉局部状态
- 3.1.6 对象也可作为函数使用
- 3.1.7 关键要点
- 3.2 lambda是单表达式函数
- 3.2.1 lambda的使用场景
- 3.2.2 不应过度使用lambda
- 3.2.3 关键要点
- 3.3 装饰器的力量
- 3.3.1 Python装饰器基础
- 3.3.2 装饰器可以修改行为
- 3.3.3 将多个装饰器应用于一个函数
- 3.3.4 装饰接受参数的函数
- 3.3.5 如何编写“可调试”的装饰器
- 3.3.6 关键要点
- 3.4 有趣的*args和**kwargs
- 3.4.1 传递可选参数或关键字参数
- 3.4.2 关键要点
- 3.5 函数参数解包
- 关键要点
- 3.6 返回空值
- 关键要点
- 第4章 类与面向对象
- 4.1 对象比较:is与==
- 4.2 字符串转换(每个类都需要__repr__)
- 4.2.1 __str__与__repr__
- 4.2.2 为什么每个类都需要__repr__
- 4.2.3 的差异:__unicode__
- 4.2.4 关键要点
- 4.3 定义自己的异常类
- 关键要点
- 4.4 克隆对象
- 4.4.1 制作浅副本
- 4.4.2 制作深副本
- 4.4.3 复制任意对象
- 4.4.4 关键要点
- 4.5 用抽象基类避免继承错误
- 关键要点
- 4.6 namedtuple的优点
- 4.6.1 namedtuple上场
- 4.6.2 子类化namedtuple
- 4.6.3 内置的辅助方法
- 4.6.4 何时使用namedtuple
- 4.6.5 关键要点
- 4.7 类变量与实例变量的陷阱
- 4.7.1 与狗无关的例子
- 4.7.2 关键要点
- 4.8 实例方法、类方法和静态方法揭秘
- 4.8.1 实例方法
- 4.8.2 类方法
- 4.8.3 静态方法
- 4.8.4 在实践中探寻
- 4.8.5 使用@classmethod的Pizza工厂类
- 4.8.6 什么时候使用静态方法
- 4.8.7 关键要点
- 第5章 Python中常见的数据结构
- 5.1 字典、映射和散列表
- 5.1.1 dict——首选字典实现
- 5.1.2 collections.OrderedDict——能记住键的插入顺序
- 5.1.3 collections.defaultdict——为缺失的键返回默认值
- 5.1.4 collections.ChainMap——搜索多个字典
- 5.1.5 types.MappingProxyType——用于创建只读字典
- 5.1.6 Python中的字典:总结
- 5.1.7 关键要点
- 5.2 数组数据结构
- 5.2.1 列表——可变动态数组
- 5.2.2 元组——不可变容器
- 5.2.3 array.array——基本类型数组
- 5.2.4 str——含有Unicode字符的不可变数组
- 5.2.5 bytes——含有单字节的不可变数组
- 5.2.6 bytearray——含有单字节的可变数组
- 5.2.7 关键要点
- 5.3 记录、结构体和纯数据对象
- 5.3.1 字典——简单数据对象
- 5.3.2 元组——不可变对象集合
- 5.3.3 编写自定义类——手动精细控制
- 5.3.4 collections.namedtuple——方便的数据对象
- 5.3.5 typing.NamedTuple——改进版namedtuple
- 5.3.6 struct.Struct——序列化C结构体
- 5.3.7 types.SimpleNamespace——花哨的属性访问
- 5.3.8 关键要点
- 5.4 集合和多重集合
- 5.4.1 set——首选集合实现
- 5.4.2 frozenset——不可变集合
- 5.4.3 collections.Counter——多重集合
- 5.4.4 关键要点
- 5.5 栈(后进先出)
- 5.5.1 列表——简单的内置栈
- 5.5.2 collections.deque——快速且稳健的栈
- 5.5.3 queue.LifoQueue——为并行计算提供锁语义
- 5.5.4 比较Python中各个栈的实现
- 5.5.5 关键要点
- 5.6 队列(先进先出)
- 5.6.1 列表——非常慢的队列
- 5.6.2 collections.deque——快速和稳健的队列
- 5.6.3 queue.Queue——为并行计算提供的锁语义
- 5.6.4 multiprocessing.Queue——共享作业队列
- 5.6.5 关键要点
- 5.7 优先队列
- 5.7.1 列表——手动维护有序队列
- 5.7.2 heapq——基于列表的二叉堆
- 5.7.3 queue.PriorityQueue——美丽的优先级队列
- 5.7.4 关键要点
- 第6章 循环和迭代
- 6.1 编写有Python特色的循环
- 关键要点
- 6.2 理解解析式
- 关键要点
- 6.3 列表切片技巧与寿司操作员
- 关键要点
- 6.4 美丽的迭代器
- 6.4.1 无限迭代
- 6.4.2 for-in循环在Python中的工作原理
- 6.4.3 更简单的迭代器类
- 6.4.4 不想无限迭代
- 6.4.5 兼容性
- 6.4.6 关键要点
- 6.5 生成器是简化版迭代器
- 6.5.1 无限生成器
- 6.5.2 能够停下来的生成器
- 6.5.3 关键要点
- 6.6 生成器表达式
- 6.6.1 生成器表达式与列表解析式
- 6.6.2 过滤值
- 6.6.3 内联生成器表达式
- 6.6.4 物极必反
- 6.6.5 关键要点
- 6.7 迭代器链
- 关键要点
- 第7章 字典技巧
- 7.1 字典默认值
- 关键要点
- 7.2 字典排序
- 关键要点
- 7.3 用字典模拟switch/case语句
- 关键要点
- 7.4 “最疯狂”的字典表达式
- 关键要点
- 7.5 合并词典的几种方式
- 关键要点
- 7.6 美观地输出字典
- 关键要点
- 第8章 Python式高效技巧
- 8.1 探索Python的模块和对象
- 关键要点
- 8.2 用virtualenv隔离项目依赖关系
- 8.2.1 使用虚拟环境
- 8.2.2 关键要点
- 8.3 一窥字节码的究竟
- 关键要点
- 第9章 结语
- 9.1 针对Python开发者免费每周提示
- 9.2 PythonistaCafe:Python开发人员的社区
- 看完了
展开全部
出版方
人民邮电出版社·图灵出品
图灵社区成立于2005年6月,由人民邮电出版社投资控股,以策划出版高质量的科技书籍为核心业务,主要出版领域包括计算机、电子电气、数学统计、科普等,通过引进国际高水平的教材、专著,以及发掘国内优秀原创作品等途径,为目标读者提供一流的内容。