首先是基础的,位或(|)、位与(&)、位反(~)。
然后一些比较常用的操作,有一篇很好地Wiki,请参考:
http://wiki.python.org/moin/BitManipulation
下面照抄4个最重要的
1、二进制字符串 -> 整形:
a = int("11111111", 2) print a
后面的2表示二进制!
2、整形 -> 二进制字符串:
Python3和Python 2.6之后有内置函数bin,而2.x(x<6)中需要自己写如下函数:
def bin(s): return str(s) if s<=1 else bin(s>>1) + str(s&1)
3、将某一位置为1:
def setBit(int_type, offset): mask = 1 << offset return(int_type | mask)
4、将某一位清除为0:
def clearBit(int_type, offset): mask = ~(1 << offset) return(int_type & mask)
5、测试某一位是否位1:
def testBit(int_type, offset): mask = 1 << offset return(int_type & mask)