对不起这个新手问题,我相信答案很简单,但我仍然不明白。
尽管进行了一些阅读,但面向对象编程仍然有我不理解的黑暗。这是我第二次看到需要创建类的中间实例来调用方法。urllib
从文档中检查以下示例:
import urllib
opener = urllib.FancyURLopener({})
f = opener.open("http://www.python.org/")
f.read()
我不明白为什么它需要创建opener
实例来调用该open
方法。我不明白为什么以下代码不起作用:
import urllib
f = urllib.FancyURLopener.open("http://www.python.org/")
f.read()
尝试调用时出现错误urllib.FancyURLopener.open
:
TypeError: unbound method open() must be called with FancyURLopener instance as first argument (got str instance instead)
你们能在这个阴影中带灯吗?非常感谢 !