代表在python [英] Delegates in python
本文介绍了代表在python的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我已经实现了这个简短的例子来尝试演示一个简单的委托模式。我的问题是。这样看起来像我已经明白了授权吗?
I've implemented this short example to try to demonstrate a simple delegation pattern. My question is. Does this look like I've understood delegation right?
class Handler:
def __init__(self, parent = None):
self.parent = parent
def Handle(self, event):
handler = 'Handle_' +event
if hasattr(self, handler):
func = getattr(self, handler)
func()
elif self.parent:
self.parent.Handle(event)
class Geo():
def __init__(self, h):
self.handler = h
def Handle(self, event):
func = getattr(self.handler, 'Handle')
func(event)
class Steve():
def __init__(self, h):
self.handler = h
def Handle(self, event):
func = getattr(self.handler, 'Handle')
func(event)
class Andy():
def Handle(self, event):
print 'Andy is handling %s' %(event)
if __name__ == '__main__':
a = Andy()
s = Steve(a)
g = Geo(s)
g.Handle('lab on fire')
推荐答案
这是基本概念,是的 - 传递一些传入的请求给另一个对象来照顾of。
That's the basic concept, yes - passing on some incoming request to another object to take care of.
这篇关于代表在python的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文