首页后端开发Python位运算符

位运算符

时间2023-04-16 19:36:02发布访客分类Python浏览1218
导读:·位运算符 --位运算是把数字看做二进制数来进行计算的,先将要进行运算的数据转换为二进制,然后才能进行运算 --“位与”运算(&) ·两个操作数据的二进制表示,只有对应位都是1时,结果为1,否则为0位与运算print(12...

·位运算符

--位运算是把数字看做二进制数来进行计算的,先将要进行运算的数据转换为二进制,然后才能进行运算

--“位与”运算(& )

·两个操作数据的二进制表示,只有对应位都是1时,结果为1,否则为0

位与运算
print(12 &
     8) #位与运算
结果:8

--“位或”运算(|)

·两个操作数据的二进制表示,只有对应位都是0时,结果为0,否则为1

位或运算
print(4 | 8)#位或运算
结果:12 

--“位异或”运算(^)

·两个操作数据的二进制表示,同时为0或同时为1,结果为0,否则为1(相同为0,不同为1)

位异或运算
print(31 ^ 22)#位异或运算
结果:9

--“位取反”运算(~)

·操作数中对应的二进制数1修改为0,0修改为1

位取反运算
print(~123) #位取反运算
结果:-124

--“左移位”运算()

·将一个二进制数向左移动指定的位数,左边(高位端)溢出的位被丢弃,右边的空位用0补充

·左移位运算相当于乘以2的N次幂

左移位运算
print('左移位',22) #左移位:将2向左移动2位
结果:8  (相当于2*2**2即2乘以2的2次幂)
print('左移位',23) #左移位:将2向左移动3位
结果:16 (相当于2*2**3即2乘以2的3次幂)

--“右移位”运算(> > )

·将一个二进制数向右移动指定的位数,右边(低位端)溢出的位被丢弃,左边(高位端)的空位端,如果最高位是0(正数)左侧空位填0,如果最高位是1(负数),左侧空位填1

·右移位运算相当于除以2的N次幂

右移位运算
print('右移位',8>
    >
    2) #右移位:将8向右移动2位
结果:2  (相当于8/2**2即8除以2的2次幂)
print('右移位',-8>
    >
    2) #右移位:将-8向右移动2位
结果:-2 (相当于-8/2**2即8除以2的2次幂)

声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!

python

若转载请注明出处: 位运算符
本文地址: https://pptw.com/jishu/3389.html
运算符的优先级 【Python】字符串 ⑤ ( Python 字符串快速格式化 | 不考虑变量类型 | 不考虑精度控制 )

游客 回复需填写必要信息