Python位运算符示例

20
Jun

Python位运算符示例

下表列出了所有的Python语言的支持位运算符。假设变量a持有60和变量b持有13,则:

运算符描述示例
&二进制AND操作复制一位到一个结果数,如果存在两个操作数。(a & b) = 12 即  0000 1100
|二进制或复制操作了一个比特,如果它存在一个操作数中。(a | b) = 61  即 0011 1101
^二进制异或运算符的副本,如果它被设置在一个操作数而不是两个比特。(a ^ b) = 49  即 0011 0001
~二进制的补运算符是一元的,并有“翻转”位的效果。(~a ) =  -61  即 1100 0011 以2的补码形式由于带符号二进制数。
<<二进位向左移位运算符。左操作数的值左移由右操作数指定的位数。a << 2 = 240 即 1111 0000
>>二进位向右移位运算符。左操作数的值是由右操作数指定的位数向右移动。a >> 2 = 15 即  0000 1111

示例:

试试下面的例子就明白了所有的Python编程语言提供了位运算符:

#!/usr/bin/pythona = 60            # 60 = 0011 1100 b = 13            # 13 = 0000 1101 c = 0c = a & b;        # 12 = 0000 1100print "Line 1 - Value of c is ", c

c = a | b;        # 61 = 0011 1101 print "Line 2 - Value of c is ", c

c = a ^ b;        # 49 = 0011 0001print "Line 3 - Value of c is ", c

c = ~a;           # -61 = 1100 0011print "Line 4 - Value of c is ", c

c = a << 2;       # 240 = 1111 0000print "Line 5 - Value of c is ", c

c = a >> 2;       # 15 = 0000 1111print "Line 6 - Value of c is ", c

当执行上面的程序它会产生以下结果:

Line 1 - Value of c is 12
Line 2 - Value of c is 61
Line 3 - Value of c is 49
Line 4 - Value of c is -61
Line 5 - Value of c is 240
Line 6 - Value of c is 15

如果您觉得本文还不错,可以点击下面赞赏我们!

支付宝赞赏      微信赞赏