我目前正在考虑尝试在 Python 中使用回调。
我想做的是从回调中返回一个值,然后使用这个返回值进行条件处理。因此,例如,如果用户输入“Y”,我想在控制台上打印一些东西。
由于我是 Python 新手,所以下面的代码与我目前所能获得的一样接近,但是:
a)我不确定这是否是 Pythonic 的方式
b) 正确的做法?
class Observable:
def subscribe(self,callback):
self.callback = callback
def fire(self):
self.callback()
class CallBackStuff:
def doCallback(self):
userInput = raw_input("Please enter Y or N?")
return userInput
if __name__ == '__main__':
s = CallBackStuff()
o = Observable()
o.subscribe(s.doCallback)
t = o.fire()
print t