#按位与(AND):处理两个长度相同的二进制数,两个相应的二进位都为1,该位的结果值才为1,否则为0
0b1010 & 0b1100
8 #1000
#按位或(OR): 按位或处理两个长度相同的二进制数,两个相应的二进位中只要有一个为1,该位的结果值为1
0b1010 | 0b1100
14 #1110
#按位异或(XOR): 对等长二进制模式按位,或二进制数的每一位执行逻辑异按位或操作。操作的结果是如果某位不同则该位为1,否则该位为0
0b1010 ^ 0b1100
6 #0110
#移位:将一个二进制数中的每一位全部都向一个方向移动指定位,溢出的部分将被舍弃,而空缺的部分填入一定的值。
0b1010 << 2
40 #101000
0b1010 >> 2
2 #10
#取反(NOT): 一元操作,对二进制每位执行逻辑反,1->0, 0->1, 值得注意的是此操作符与”逻辑非(!)”操作符不同
~0b1010
-11 #10000000 00000000 00000000 00001011
type(0b1010)
1 | # coding:utf-8 |