使用 ~ 反转一个数字布尔数组

我可以使用 ~A来反转一个布尔值的数组,而不是相当笨拙的函数 np.logical_and()np.invert()吗?

事实上,~看起来工作得很好,但是我在任何一本小小的参考手册中都找不到它,而且——更令人担忧的是——它确实可以使用标量 没有(例如,bool(~True)返回 True!)所以我有点担心。

74553 次浏览

short answer: YES

Ref:

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

Notice:

Computes the bit-wise NOT of the underlying binary representation of the integers in the input arrays. This ufunc implements the C/Python operator ~.

and

bitwise_not is an alias for invert:

>> np.bitwise_not is np.invert
>> True