Python
a_big_pig
这个作者很懒,什么都没留下…
展开
-
【读书笔记】深入理解Python特性(一)
目录 1.断言 2.代码可维护性建议之逗号的放置 3. 上下文管理器和with 4. 下划线、双下划线及其他 1.断言 断言面向开发者,用于debug,除非触发了程序bug,否则绝不应该触发断言;异常或者if/else才是用来处理用户输入和预期异常的。 不要用断言验证数据,否则在断言禁用(命令行中使用-O/-OO标识或者CPython中的PYTHONOPTIMIZE=1,这个不太了解...原创 2019-09-13 01:22:35 · 316 阅读 · 1 评论 -
【读书笔记】深入理解Python特性(二)
目录 1.字符串格式化的几种方法 2. 函数是Python的头等对象 3. lambda是单表达式函数 4. 装饰器的力量 1.字符串格式化的几种方法 旧式%方式: >>> 'Hello, %s' % name 'Hello, Bob' >>> '%x' % errno 'badc0ffee' >>> 'Hey %(name...原创 2019-09-15 12:39:36 · 205 阅读 · 0 评论 -
【读书笔记】深入理解Python特性(三)
目录 1. 对象转换为字符串 2. 浅复制和深复制 3. 用抽象基类避免继承错误 4. namedtuple 1. 对象转换为字符串 在print对象的时候会调用对象的__str__方法,在把对象作为表达式调用的时候会调用对象的__repr__方法。 可以使用内置的str()和repr()方法来显示调用__str__和__repr__以更明确地表达意图。 __str__()侧重于面...原创 2019-09-17 00:22:30 · 182 阅读 · 0 评论 -
【读书笔记】深入理解Python特性(四)
目录 1. 实例方法、类方法和静态方法 2. 字典(也称为映射、散列表、查找表、关联数组) 3. 数组数据结构 4. 记录、结构体和纯数据对象 1. 实例方法、类方法和静态方法 Python在使用点语法调用静态方法时不会传入self或者cls参数,从而限制了静态方法访问的内容。 使用@classmethod定义的类方法可以创建工厂函数,如果将来类重命名,就不用变更工厂方法中的构造函数...原创 2019-09-17 23:54:57 · 715 阅读 · 0 评论 -
【读书笔记】深入理解Python特性(五)
目录 1. 集合和多重集合 2. 栈 3. 队列 4. 优先队列 1. 集合和多重集合 集合的元素是可哈希的 frozenset:不可变集合 collections.Counter():多重集合 >>> from collections import Counter >>> inventory = Counter() >>>...原创 2019-09-21 01:17:26 · 214 阅读 · 0 评论 -
【读书笔记】深入理解Python特性(六)
1. 迭代器可以返回含有任意个元素的元组,然后在for循环内解包 >>> emails = { ... 'Bob': '[email protected]', ... 'Alice': '[email protected]' ... } >>> for name, email in emails.items(): ... print(f'{n...原创 2019-09-21 21:05:19 · 211 阅读 · 0 评论