2

我下载了 RxPY并在看Rx 教程时遇到:

在此处输入图像描述

那么我将如何使用 RxPY 在 Python 中完成上述工作?特别是,查询q = from x in xs where...不是语法上有效的 Python 代码——那么如何改变呢?

4

2 回答 2

3

C# 中的所有 LINQ 查询都可以轻松转换为扩展方法(whereis forWhereselectis for Select):

In [20]: from rx import Observable

In [21]: xs = Observable.range(1, 10)

In [22]: q = xs.where(lambda x: x % 2 == 0).select(lambda x: -x)

In [23]: q.subscribe(print)
-2
-4
-6
-8
-10

您也可以使用filter代替wheremap代替select

In [24]: q = xs.filter(lambda x: x % 2 == 0).map(lambda x: -x)

In [25]: q.subscribe(print)
-2
-4
-6
-8
-10
于 2015-12-19T07:22:08.800 回答
0

您显示的图片包含 C# 中的代码,而不是 Python。在 Python 中,它将如下所示:

from rx import Observable
xs = Observable.range(1, 10)
q = xs.filter(lambda x: x % 2 == 0).map(lambda x: -x)
q.subscribe(print)

一般文档可以在http://reactivex.io的文档部分找到。Python 特定文档位于https://github.com/ReactiveX/RxPY/blob/master/README.md

于 2017-04-16T08:08:49.907 回答