RxPY – 条件和布尔运算符
all
这个操作符将检查源观测点的所有值是否满足给定的条件。
语法
参数
predicate:布尔型。这个函数将被应用于所有的值,从源观测器中,并将根据给定的条件返回真或假。
返回值
返回值是一个观测值,它将具有布尔值true或false,基于应用于源观测值的所有值的条件。
示例 1
输出
例2
输出
contains
如果给定的值存在于源观测器的值中,这个操作符将返回一个观测器,其值为真或假。
语法
参数
值:要检查的值,如果在源观测点中存在的话。
comparer:可选的。这是一个比较器函数,将应用于源观测器中的值进行比较。
例子
输出
例2:使用比较器
输出
default_if_empty
如果源观测点为空,该操作符将返回一个默认值。
语法
参数
default_value:可选的。它将给出输出,如果没有传递任何东西作为default_value,则为None,否则它将给出传递的任何值。
返回值
如果源观测器为空,它将返回一个带有默认值的观测器。
示例 1
输出
例2:通过default_value
输出
sequence_equal
这个操作符将比较两个可观察变量的序列,或一个值的数组,并返回一个值为真或假的可观察变量。
语法
参数
second_seq:要与第一个观察变量进行比较的观察变量或数组。
comparer:可选的。比较器函数,用于比较两个序列中的值。
例子
输出
示例:使用比较器函数
输出
skip_until
这个操作符将丢弃源观测点的值,直到第二个观测点发出一个值。
语法
参数
observable:第二个观察变量,当它发射出一个值时,将触发源观察变量。
返回值
它将返回一个观测器,该观测器将拥有源观测器的值,直到第二个观测器发射出一个值。
例子
输出
skip_while
这个操作符将返回一个带有满足所传递的条件的源观察变量的值的观察变量。
语法
参数
predicate_func:这个函数将被应用于源观测点的所有值,并返回满足条件的值。
返回值
它将返回一个包含源观测器中满足条件的值的观测器。
例子
输出
take_until
这个操作符将在第二个观测器发出一个值或被终止后丢弃源观测器的值。
语法
参数
observable:第二个观察变量,当它发射出一个值时,将终止源观察变量。
返回值
它将返回一个观测器,当使用的第二个观测器发射出一个值时,它将只有源观测器的值。
例子
在这个例子中,你将得到从范围内发射的值。但是,一旦定时器完成,它将停止源观测器的进一步发射。
输出
take_while
当条件失败时,这个操作符将丢弃源观测点的值。
语法
参数
predicate_func:这个函数将评估源观测点的每个值。
返回值
它将返回一个带有数值的可观察变量,直到谓词函数满足为止。
例子
输出