引言:Numpy的位运算——其中的numpy.bitwise_or
和numpy.invert
就很神奇
功能:都是对数组中整数进行位取反运算,即二进制位上0变1,1变0。如果高位上变成了1,则表示负数,将它换算成十进制的计算步骤如下:
(有符号的整数——负数)
- 二进制最高位为1,表示负数;
- 除了最高位以外,其余位置按位取反,然后末位加1
- 将这部分转换成十进制,带上负号。
神奇的地方来了!!对数字13进行位取反运算,计算得到-14。但是-14的二进制和242的二进制完全一样!!!大大的疑惑???
import numpy as np
a,b = 13,17
print (<