RxPY – 最新版本更新

RxPY – 最新版本更新

在本教程中,我们使用的是RxPY 3版本和python 3.7.3版本。RxPY第3版的工作与早期版本,即RxPY第1版有一点不同。

在本章中,我们将讨论这两个版本之间的差异,以及在更新Python和RxPY版本时需要做的改变。

RxPY中的可观察变量

在RxPy版本1中,Observable是一个独立的类 −

from rx import Observable

要使用Observable,你必须按以下方式使用它 −

Observable.of(1,2,3,4,5,6,7,8,9,10)

在RxPy第三版中,Observable直接成为rx包的一部分。

例子

import rx
rx.of(1,2,3,4,5,6,7,8,9,10)

RxPy中的操作符

在版本1中,操作符是Observable类中的方法。例如,为了利用操作符,我们必须导入Observable,如下图所示

from rx import Observable

运算符是作为Observable.operator使用的,例如,如下图所示 –

Observable.of(1,2,3,4,5,6,7,8,9,10)\
   .filter(lambda i: i %2 == 0) \
   .sum() \
   .subscribe(lambda x: print("Value is {0}".format(x)))

在RxPY第3版的情况下,运算符是函数,并被导入和使用,如下所示

import rx
from rx import operators as ops
rx.of(1,2,3,4,5,6,7,8,9,10).pipe(
   ops.filter(lambda i: i %2 == 0),
   ops.sum()
).subscribe(lambda x: print("Value is {0}".format(x)))

使用Pipe()方法串联运算符

在RxPy第1版中,如果你必须在一个观测器上使用多个操作符,必须按以下方式进行:

例子

from rx import Observable
Observable.of(1,2,3,4,5,6,7,8,9,10)\
   .filter(lambda i: i %2 == 0) \
   .sum() \
   .subscribe(lambda x: print("Value is {0}".format(x)))

但是,在RxPY第3版中,你可以使用pipe()方法和多个运算符,如下图所示。

例子

import rx
from rx import operators as ops
rx.of(1,2,3,4,5,6,7,8,9,10).pipe(
   ops.filter(lambda i: i %2 == 0),
   ops.sum()
).subscribe(lambda x: print("Value is {0}".format(x)))

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程