RxPY 组合操作符

RxPY 组合操作符

combine_latest

这个操作符将为输入的observable创建一个元组。

语法

combine_latest(observable1,observable2,.....)

参数

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

该操作符将合并给定的 observables。

语法

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:您想在开头添加的值。

返回值

它返回一个observable,该observable在开头处添加了给定的值,然后是源observable的值。

示例

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

这个操作符返回一个以元组形式的observable,元组由给定observable的第一个值等等组成。

语法

zip(observable1, observable2...)

参数

Observable: 一个observable

返回值

它返回一个以元组格式存储值的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)

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程