Python位运算符

Posted 以梦为马&不负韶华

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python位运算符相关的知识,希望对你有一定的参考价值。

简介:

位运算符是把十进制的数字看做是二进制来进行计算
将对比的两个数字转为二进制,位数相同,不同则补0,对应位置进行位运算,并将结果转为十进制。

使用:

bin():函数可将十进制数据转为二进制,0b为二进制分辨
bin(60)为 0b111100
bin(13)为 0b1101

1.位于运算符:&

两者为真(1)即为真(1),否则为假(0)
例:60&13
11 1100 & 00 1101 结果为: 0b00 1100 转为十进制结果为:12

2.位或运算符:|

二进制对应的位置存在1则为真,即结果为1
例:60|13
11 1100 | 00 1101 结果为: 0b11 1101 转为十进制结果为:61

3.位异或运算符:^

两个相反为真(1),两个相同为假(0)
例:60^13
11 1100 ^ 00 1101 结果为: 0b11 0001 转为十进制结果为:49

4.位取反操作符:~

二进制对应的位置存在1则为真,即结果为1
例:~60
~11 1100 结果为: -0b11 1101 转为十进制结果为:61

5.左移动运算符:<<

二进制向左移动对应的位数,高位移出,低位的空位补零
例:60<<2

11 1100 <<2 结果为: 0b11110000 转为十进制结果为:240

6.右移动运算符:>>

二进制向右移动对应的位数,高位移出,低位的空位补零
例:60>>2
11 1100 >> 2 结果为: 0b1111 转为十进制结果为:15

欢迎各位交流。您的点赞是我坚持的动力。

以上是关于Python位运算符的主要内容,如果未能解决你的问题,请参考以下文章

位移&二进制转换&原码&反码&补码

JS运算符

Java位移运算

Java移位运算之算术右移位

Java移位运算之算术左移位

java中位运算 12>>33 ,应该怎么计算?过程是啥?