maxframe.tensor.logical_xor#

maxframe.tensor.logical_xor(x1, x2, out=None, where=None, **kwargs)[源代码]#

逐元素计算 x1 和 x2 的逻辑异或值。

参数:
  • x1 (array_like) -- 逻辑异或运算应用于 x1x2 的元素。它们的形状必须可以广播为相同形状。

  • x2 (array_like) -- 逻辑异或运算应用于 x1x2 的元素。它们的形状必须可以广播为相同形状。

  • out (Tensor, None, or tuple of Tensor and None, optional) -- 用于存储结果的位置。如果提供,其形状必须与输入广播后的形状一致。如果未提供或为 None,则返回一个新分配的张量。元组(只能作为关键字参数)的长度必须等于输出的数量。

  • where (array_like, optional) -- 为 True 的值表示在该位置计算 ufunc,为 False 的值表示保留输出中的原始值。

  • **kwargs

返回:

y -- 应用于 x1x2 元素的逻辑异或运算的布尔结果;形状由是否需要对一个或两个数组进行广播决定。

返回类型:

bool or Tensor of bool

示例

>>> import maxframe.tensor as mt
>>> mt.logical_xor(True, False).execute()
True
>>> mt.logical_xor([True, True, False, False], [True, False, True, False]).execute()
array([False,  True,  True, False])
>>> x = mt.arange(5)
>>> mt.logical_xor(x < 1, x > 3).execute()
array([ True, False, False, False,  True])

展示支持广播的简单示例

>>> mt.logical_xor(0, mt.eye(2)).execute()
array([[ True, False],
       [False,  True]])