mindspore.ops.logical_and

mindspore.ops.logical_and(input, other)[源代码]

逐元素计算两个Tensor的逻辑与运算。 inputother 的输入遵循隐式类型转换规则,使数据类型一致。 输入必须是两个Tensor或一个Tensor和一个bool。 当输入是两个Tensor时,它们的shape可以广播,数据类型必须都是bool。 当输入是一个Tensor和一个bool时,bool对象只能是一个常量,Tensor的数据类型必须是bool。

\[out_{i} = input_{i} \wedge other_{i}\]

说明

logical_and支持广播。

参数:
  • input (Union[Tensor, bool]) - 第一个输入是bool或数据类型可被隐式转换为bool的Tensor。

  • other (Union[Tensor, bool]) - 当第一个输入是Tensor的时候,第二个输入是bool或者数据类型可被隐式转换为bool的Tensor。

返回:

Tensor,其shape与广播后的shape相同,数据类型为bool。

异常:
  • TypeError - 如果 inputother 都不是Tensor。

支持平台:

Ascend GPU CPU

样例:

>>> import mindspore
>>> import numpy as np
>>> from mindspore import Tensor, ops
>>> x = Tensor(np.array([True, False, True]), mindspore.bool_)
>>> y = Tensor(np.array([True, True, False]), mindspore.bool_)
>>> output = ops.logical_and(x, y)
>>> print(output)
[ True False False]
>>> x = Tensor(1, mindspore.bool_)
>>> y = Tensor(0, mindspore.bool_)
>>> output = ops.logical_and(x, y)
>>> print(output)
False
>>> x = True
>>> y = Tensor(0, mindspore.bool_)
>>> output = ops.logical_and(x, y)
>>> print(output)
False
>>> x = True
>>> y = Tensor(np.array([True, False]), mindspore.bool_)
>>> output = ops.logical_and(x, y)
>>> print(output)
[True False]