我有一个类需要访问 urllib2,对我来说这个简单的例子是:
class foo(object):
myStringHTML = urllib2.urlopen("http://www.google.com").read()
我应该如何构建我的代码以包含 urllib2?通常,我想将 foo 存储在具有许多其他类的实用程序模块中,并能够从模块中单独导入 foo:
from utilpackage import foo
将导入放入类中是正确的样式吗?这对我来说似乎很奇怪,但它确实有效....
class import_u2_in_foo(object):
import urllib2
myStringHtml = urllib2.urlopen("http://www.google.com").read()
或者我应该将 foo 移动到另一个包中以便我总是使用
import foo
# then foo.py contains
import urllib2
class foo(object):
myStringHtml = urllib2.urlopen("http://www.google.com").read()
我应该如何构建我的代码以使其成为最 pythonic :)?
请您参考如下方法:
你应该在 utilpackage 模块中导入它,但只从它导出类 foo:
import urllib2
__all__ = ["foo"]
class foo(object):
myStringHtml = urllib2.urlopen("http://www.google.com").read()
然后你可以做
from utilpackage import foo
但不是
from utilpackage import urllib2
在我看来,这是来自进口的最佳做法。
