由于 Python 在 2-3 版本的升级过程中的激进演变,导致了应用的兼容困难,
很多第三方库为了同时兼容 Python 2 和 3 不得不使用一些难看的 patch 来解决兼容性问题。
比较常见的做法是自己编写 _compat.py
(compatibility 的缩写) 或者直接使用 six 库。
six 支持 Python 2.5+ 版本,你可以引用它,也可以将其直接复制到代码库中。
six 是 2*3
的意思,之所以使用 2*3
而不是 2+3
,是因为 five 这个名字已经被 Zope Five 所使用。
官方文档:six