RxPY – Combining Operators

RxPY – Combination Operators

combine_latest

This operator creates a tuple from the observables it takes as input.

Syntax

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

Parameters

Observable: An observable.

Return Value

It returns an observable with the source observable’s value converted into a tuple.

Example

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)))

Output

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

This operator merges the given observations.

Syntax

merge(observable)

Parameters

Observer: An Observable.

Return Value

This returns an observable with a sequence from the given observable.

Example

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)))

Output

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

This operator takes the given values, adds them to the beginning of the source observable, and then returns the complete sequence.

Syntax

start_with(values)

Parameters

Values: The value you want to prefix at the beginning.

Return Value

It returns an observable with the given value prefixed at the beginning, followed by the value of the source observable.

Example

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

Output

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

This operator returns an observable with a tuple of values, consisting of the first value of the given observable, and so on.

Syntax

zip(observable1, observable2...)

Parameters

Observer: An Observable

Return Value

It returns an observable with a tuple of values.

Example

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)))

Output

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)

Leave a Reply

Your email address will not be published. Required fields are marked *