Python 有序字典的实现

最近在看 requests 源码的时候看到作者使用了 urllib3 中自己实现的类,收获颇多。自己实现一个数据结构往往是最需要算法和优化的地方,各种语法糖黑科技,相当的 Pythonic,看这种代码实在是一种享受。如果要我自己实现的话,自己会想到用一个有序存储的对象(如列表)去 hack 内部的实现,但这样有几个缺点: 列表的插入、删除操作性能不如字典,复杂度是 O(N) 量级的。 自定义类需要继承于,没有利用继承的方法特性。 来看看大神是怎么实现的吧。

Keep reading

Python 列表小技巧

Python 中的列表和字典一样,都是可变数据类型,与字符串和整型相比,它具有一些独特的特性。在平常使用中, 也会经常遇到一些坑,本文试着举一些例子并说明。

Keep reading

Requests源码阅读v0.8.0

工作两年了,一直用 python 写一些 API 之类的东西,自动化框架也有涉及,却一直感觉对个人技能提升缓慢。决定开这个坑,是之前看到@wangshunping的read requests,生动有趣,可惜 0.8.0 之后没有更新了。待我稍稍有了一点看源码的动力,就想接着下去写。真是漫漫长路啊,4409 个 commit,1000 多个 PR,更何况还有珠玉在前,实在没有把握能把这块硬骨头给啃下来,写一点是一点吧。作为 python 的小学生,一些错误在所难免,希望大家指出,互相讨论。 下面就开始吧!

Keep reading

在博客与笔记中使用Markdown

博客的搭建 前段时间在 StackOverflow 与 Quora 上我接触到了 Markdown 标记语言,瞬时就被这种易用、美观、高逼格的东西所俘获,顿时深感之前在 QQ 空间之类的平台上写博的体验之差,往往调格式就要耗费很多的时间。于是就有了迁移到另一个博客平台的想法,用过的产品有:

Keep reading