six模块是Python2和3兼容性库,它是为了解决Python2和Python3代码兼容性而产生的,众所周知Python2和Python3版本的分裂给Python开发者们带来了很大的烦恼,为了使代码同时兼容两个版本,往往要增加大量的代码,典型的就有urllib部分方法不兼容。
相关推荐:《Python基础教程》
所以,当编写代码考虑Python2和Python3代码兼容性问题时,用:
import six.moves.urllib as urllib
不考虑兼容性问题时,直接用:
import urllib
顺便说一下,six这个名字来源于 6 = 2 x 3,为什么不用‘Five’呢?5 = 2+3,一是因为乘法更有力量(more powerful),另外是因为five这个名字已经被Zope Five项目先占了。