Enum 学习笔记

阅读文档时的笔记 enum在 Python 3.4 引入,用于表示一组绑定到唯一常量值的符号名称(成员) Create In [1]: import enum In [2]: class Status(enum.Enum): ...: FINISHED = 0 ...: PENDING = 1 ...: RUNNING = 2 ...: CANCELED »

时区知识小结

Naive and Aware Python's datetime.datetime objects have a tzinfo attribute that can be used to store time zone information, represented as an instance of a »

Flask 中的 request

本文所使用的代码来源于 Flask version 0.12.2 commit sha 571334df8e26333f34873a3dcb84441946e6c64c werkzeug version 0.14 commit sha 5b53d1539147c5db3210e0769d85397ab91f902d Flask 使用全局变量 request 来获取请求数据,而不是像 Tornado 等那样将 request 作为参数传入 handler »

Redis 数据结构 - SDS

本文代码取自 Redis 4.0.9,commit sha 为 3150c672442b2275d75a1b6cedf45084019f4d57 我们平常所使用到的 Redis 数据结构 String、Hash、List 等都是 redisObject,就算同一个类型也会有不同的底层数据结构表示,比如 127.0.0.1:6379> SADD »

CPython 源码阅读 - send/yield

本文代码取自 CPython 3.6.3, commit sha 为 2c5fed86e0cbba5a4e34792b0083128ce659909d 先放一个 Generator 的示例 def g(): yield 2 gen = g() 每一 Generator 对象都含有几个特别的属性,可以从万能的 inspect 模块的文档 中找到 gi_ »

Copy-On-Write or Copy-On-Read

这可能是我所用过的最有价值的 Banner 本文主要是解决上次面试时的疑惑:一个 200MB 的 list,fork 出一个子进程后迭代输出此 list 中的元素。此时内存情况如何,呃,我说的是 Python 先来看看如何去计算对象的大小,虽然这个并不是重点。Python 标准库提供了 sys.getsizeof 函数来获取对象的大小(单位为字节),不过这里有几个坑,文档上是这么说明的 Return »