使用〜反转一个numpy布尔数组

Rol*_*tra 41 python arrays boolean numpy invert

我可以使用~A反转一个numpy数组的布尔值,而不是相当笨拙的函数np.logical_and()np.invert()?事实上,~似乎工作正常,但我找不到它的任何nympy参考手册,以及-更令人担忧的-它的确不能与标量工作(如bool(~True)退货True!),所以我有点担心...

squ*_*uid 33

简答:是的

参考:

http://docs.scipy.org/doc/numpy/reference/generated/numpy.invert.html

注意:

计算输入数组中整数的基础二进制表示的逐位NOT.这个ufunc实现了C/Python操作符〜.

bitwise_not是invert的别名:

>> np.bitwise_not is np.invert
>> True
Run Code Online (Sandbox Code Playgroud)

  • 但是,请注意,这不适用于0和1的数组!它只适用于一系列布尔值.如果您需要处理这种灵活性,请改用numpy.logical_not (6认同)
  • @tvt173 是的,`boolean not` 和 `logic not` 总是不同的。问题和答案都与“布尔非”有关。还是谢谢提醒。 (3认同)