RxPY - Son Sürüm Güncellemeleri

Bu eğitimde, RxPY sürüm 3 ve python sürüm 3.7.3 kullanıyoruz. RxPY sürüm 3'ün çalışması önceki sürümle, yani RxPY sürüm 1 ile biraz farklıdır.

Bu bölümde, 2 sürüm arasındaki farkları ve Python ve RxPY sürümlerini güncellemeniz durumunda yapılması gereken değişiklikleri tartışacağız.

RxPY'de gözlemlenebilir

RxPy sürüm 1'de Observable ayrı bir sınıftı -

from rx import Observable

Gözlemlenebilir'i kullanmak için, onu aşağıdaki gibi kullanmanız gerekir -

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

RxPy sürüm 3'te Gözlemlenebilir, doğrudan rx paketinin bir parçasıdır.

Example

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

RxPy'deki Operatörler

1. sürümde, operatör Gözlemlenebilir sınıfındaki yöntemlerdi. Örneğin, operatörleri kullanmak için Observable'ı aşağıda gösterildiği gibi içe aktarmalıyız -

from rx import Observable

Operatörler, örneğin aşağıda gösterildiği gibi Observable.operatör olarak kullanılır -

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 sürüm 3 durumunda, operatörler işlev görür ve aşağıdaki şekilde içe aktarılır ve kullanılır -

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

Boru () yöntemini kullanarak Zincirleme Operatörleri

RxPy sürüm 1'de, bir gözlemlenebilir üzerinde birden fazla operatör kullanmanız gerekirse, aşağıdaki gibi yapılmalıdır -

Example

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

Ancak, RxPY sürüm 3 olması durumunda, boru () yöntemini ve aşağıda gösterildiği gibi birden çok operatörü kullanabilirsiniz -

Example

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