pyspider惰性求值代码问题
class Get(object):
"""
Lazy value calculate for object
"""
def __init__(self, getter):
self.getter = getter
def __get__(self, instance, owner):
return self.getter()
pyspider里面的代码。查了谷歌,发现是惰性求值,这段代码最后return的结果,为什么是getter(),而不是getter呢。
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
因为
return self.getter()
而不是
return self.getter
啊
返回方法,在方法中计算属性的值,这不就是惰性求值么:需要时再去求值