RxPY - 组合运算符

  • combine_latest

    该运算符将为作为输入的可观察对象创建一个元组。

    句法

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

    参数

    observable: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

    该运算符将合并给定的 observables。

    句法

    
    
    merge(observable)
    
    

    参数

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