我不能理解带有布尔值的NumPy数组中的^运算符是什么。
print("----------train_mask before-------------------------------------------")
print (train_mask[10:30])
print(len(train_mask))
train_mask ^= eval_mask
print("----------eval -------------------------------------------")
print (eval_mask[10:30])
print(len(eval_mask))
print("----------train_mask -------------------------------------------")
print (train_mask[10:30])
print(len(train_mask))
输出为:
我无法理解如何将True值转换为False
1条答案
按热度按时间mspsb9vt1#
正如其他人所说,
^
是Python中的按位XOR运算符。请查看
numpy.bitwise_xor
的文档,其中部分内容如下:按元素计算两个数组的按位异或。
这里的关键点是“element-wise,”,因此在您的示例中,由于
eval_mask
数组中只有一个True
值,因此在输出中只更改了一个值。它与(对于这些简单的一维阵列)相同: