RxPy
我开始使用该模块学习 Python 中的反应式编程。现在,我有一个案例,我想根据接收到的元素运行不同的功能。我以非常直接的方式实现了它
from rx.subject import Subject
from rx import operators as ops
def do_one():
print('exec one')
def do_two():
print('exec two')
subject = Subject()
subject.pipe(
ops.filter(lambda action: action == 'one')
).subscribe(lambda x: do_one())
subject.pipe(
ops.filter(lambda action: action == 'two')
).subscribe(lambda x: do_two())
subject.on_next('one')
subject.on_next('two')
对我来说,这似乎有点难看,但是,我在操作/Observables 中找不到任何情况、开关或其他方法来根据收到的元素触发不同的执行。
有没有更好的方法来做到这一点?