我有一個聽起來像委託問題的問題。我有類似下面的代碼:我需要一個委託類?
class foo(object):
def __init__(self,onEvent1="", onEvent2=""):
self.OnEvent1=onEvent1
self.OnEvent1=onEvent2
def aLoop(self):
...
#in case of event1
self.OnEvent1()
...
#in case of event2
self.OnEvent2()
EventType=0
def MyBar1():
print("Event Type1")
EventType=1
def MyBar2():
print("Event Type2")
EventType=2
myFoo=foo(MyBar1,MyBar2)
while True:
myFoo.aLoop()
if (EventType==1):
print ("EventType is 1")
EventType=0
elif (EventType==2):
print ("EventType is 2")
EventType=0
我可以看到print()
回調函數中而不是在while循環的消息的print()
的消息。 變量EventType
不會更改其值。
我能做什麼?
好,好!我是個傻瓜... – EffegiWeb 2015-03-03 11:34:51
坦克的幫助,即使在傳遞參數。 我是新的python編程,我通常在c和Vb.net編寫程序。 – EffegiWeb 2015-03-04 17:12:02