RxPY - 组合运算符
combine_latest
此运算符将为作为输入给定的可观察对象创建一个元组。
语法
combine_latest(observable1,observable2,.....)
参数
Observable: 一个可观察对象
返回值
它返回一个 observable,其中将源 observable 的值转换为一个元组。
示例
from rx import of, operators as op from datetime import date test = of(1,2,3,4,5,6) test2 = of(11,12,13,14,15,16) test3 = of(111,112,113,114,115,116) sub1 = test.pipe( op.combine_latest(test2, test3) ) sub1.subscribe(lambda x: print("The value is {0}".format(x)))
输出
E:\pyrx>python testrx.py The value is (6, 16, 111) The value is (6, 16, 112) The value is (6, 16, 113) The value is (6, 16, 114) The value is (6, 16, 115) The value is (6, 16, 116)
merge
此运算符将合并给定的可观察对象。
语法
merge(observable)
参数
Observable: 一个可观察对象。
返回值
它将从给定的可观察量中返回一个带有一个序列的可观察量。
示例
from rx import of, operators as op from datetime import date test = of(1,2,3,4,5,6) test2 = of(11,12,13,14,15,16) sub1 = test.pipe( op.merge(test2) ) sub1.subscribe(lambda x: print("The value is {0}".format(x)))
输出
E:\pyrx>python testrx.py The value is 1 The value is 2 The value is 3 The value is 4 The value is 5 The value is 6 The value is 11 The value is 12 The value is 13 The value is 14 The value is 15 The value is 16
start_with
此运算符将接受给定值,并在源可观察对象的开头添加返回完整序列。
语法
start_with(values)
参数
values: 您要在开头添加前缀的值。
返回值
它返回一个带有给定值前缀的可观察对象,后跟来自源可观察对象的值。
示例
from rx import of, operators as op from datetime import date test = of(1,2,3,4,5,6) sub1 = test.pipe( op.start_with(-2,-1,0) ) sub1.subscribe(lambda x: print("The value is {0}".format(x)))xExample
输出
E:\pyrx>python testrx.py The value is -2 The value is -1 The value is 0 The value is 1 The value is 2 The value is 3 The value is 4 The value is 5 The value is 6
zip
此运算符返回一个具有元组形式值的可观察值,该值是通过获取给定可观察值的第一个值等形成的。
语法
zip(observable1, observable2...)
参数
Observable: 一个可观察的对象
返回值
它返回一个具有元组格式值的可观察对象。
示例
from rx import of, operators as op from datetime import date test = of(1,2,3,4,5,6) test1 = of(4,8,12,16,20) test2 = of(5,10,15,20,25) sub1 = test.pipe( op.zip(test1, test2) ) sub1.subscribe(lambda x: print("The value is {0}".format(x)))
输出
E:\pyrx>python testrx.py The value is (1, 4, 5) The value is (2, 8, 10) The value is (3, 12, 15) The value is (4, 16, 20) The value is (5, 20, 25)