创新路
我们一直在努力

python位运算符

下表中变量 a 为 60,b 为 13,二进制格式如下:

a = 0011 1100

b = 0000 1101

a&b = 0000 1100

a|b = 0011 1101

a^b = 0011 0001

~a  = 1100 0011

备注:

& #按位与运算符:参与运算的两个值,如果两个相应位都为1,则该位的结果为1,否则为0    

| #按位或运算符:只要对应的二个二进位有一个为1时,结果位就为1。   

^  #按位异或运算符:当两对应的二进位相异时,结果为1

~  #按位取反运算符:对数据的每个二进制位取反,即把1变为0,把0变为1 。~x 类似于 -x-1

<<   #左移动运算符:运算数的各二进位全部左移若干位,由 << 右边的数字指定了移动的位数,高位丢弃,低位补0。

>>  #右移动运算符:把">>"左边的运算数的各二进位全部右移若干位,>> 右边的数字指定了移动的位数

实例:

# -*- coding: UTF-8 -*-

 

a = 60            # 60 = 0011 1100 

b = 13            # 13 = 0000 1101 

c = 0

 

c = a & b;        # 12 = 0000 1100

print "1 – c 的值为:", c

 

c = a | b;        # 61 = 0011 1101 

print "2 – c 的值为:", c

 

c = a ^ b;        # 49 = 0011 0001

print "3 – c 的值为:", c

 

c = ~a;           # -61 = 1100 0011

print "4 – c 的值为:", c

 

c = a << 2;       # 240 = 1111 0000

print "5 – c 的值为:", c

 

c = a >> 2;       # 15 = 0000 1111

print "6 – c 的值为:", c

未经允许不得转载:天府数据港官方信息博客 » python位运算符

客官点个赞呗! (0)
分享到:

评论 抢沙发

评论前必须登录!

天府云博 - 做有态度的开发&运维&设计学习分享平台!

联系我们百度云主机