📜  Python中的numpy.logical_xor

📅  最后修改于: 2020-06-18 04:32:45             🧑  作者: Mango

numpy.logical_xor(arr1, arr2, out=None, where = True, casting = ‘same_kind’, order = ‘K’, dtype = None, ufunc ‘logical_xor’) :这是一个逻辑函数,它可以帮助用户找出arr1 元素的真值与arr2 异或。两个阵列必须具有相同的形状。

参数:

arr1: [array_like]输入数组。
arr2: [array_like]输入数组。
out: [ndarray,可选]输出数组,其尺寸与输入数组相同,并放置在结果中。
** kwargs:允许您将参数的关键字可变长度参数传递给函数。当我们要处理函数中的命名参数时使用它。
where: [array_like,可选] True值表示在该位置计算通用函数(ufunc),False值表示将值保留在输出中。

返回:

一个数组,其布尔结果为arr1 XOR arr2 element-wise(具有相同形状)。

 

代码1:

# Python程序解释了logical_xor()函数  
import numpy as np 
  
# 输入 
arr1 = [1, 3, False, 0] 
arr2 = [3, 0, True, False] 
  
# 输出 
out_arr = np.logical_xor(arr1, arr2) 
  
print ("输出 Array : ", out_arr) 

输出:

输出 Array :  [False  True  True False]

代码2:如果输入数组的形状不同,则值错误

# Python程序解释了logical_xor()函数  
import numpy as np 
  
# 输入 
arr1 = [8, 2, False, 4] 
arr2 = [3, 0, False, False, 8] 
  
# 输出 
out_arr = np.logical_xor(arr1, arr2) 
  
print ("输出 Array : ", out_arr) 

输出:

ValueError: operands could not be broadcast together with shapes (4,) (5,)  

代码3:可以检查条件

# Python程序解释了logical_xor()函数 
import numpy as np 
  
# 输入 
arr1 = np.arange(8) 
print ("arr1 : ", arr1) 
  
print ("\narr1>3 : \n", arr1>3) 
print ("\narr1<6 : \n", arr1<6) 
  
print ("\n异或值  : \n", np.logical_xor(arr1>3, arr1<6)) 

输出:

arr1 :  [0 1 2 3 4 5 6 7]

arr1>3 : 
 [False False False False  True  True  True  True]

arr1<6 : 
 [ True  True  True  True  True  True False False]

异或值  : 
 [ True  True  True  True False False  True  True]