模块重命名 首先,告诉我你是如何在你的脚本中导入模块的。大多时候我们会这样做: import foo
from foo import bar
你知道么,其实你也可以这样做: import foo as foo
这样做可以起到和上面代码同样的功能,但最重要的是它能让你的脚本同时兼容Python2和Python3。现在我们来看下面的代码: try:
import urllib.request as urllib_request
except ImportError:
import urllib2 as urllib_request
让我来稍微解释一下上面的代码。 我们将模块导入代码包装在try/except 语句中。我们是这样做是因为在Python 2中并没有urllib.request 模块。这将引起一个ImportError 异常。而在Python2中urllib.request 的功能则是由urllib2 提供的。所以,当我们试图在Python2中导入urllib.request 模块的时候,一旦我们捕获到ImportError 我们将通过导入urllib2 模块来代替它。 最后,你要了解as 关键字的作用。它将导入的模块映射到urllib.request ,所以我们通过urllib_request 这个别名就可以使用urllib2 中的所有类和方法了。
|