鲜为人知的python位运算
【摘要】位运算,计算机内所有的数都以二进制存储,位运算就是对二进制位的操作位运算符说明<<按位左移,左移n位相当于乘以2的n次方>>按位右移 ,
位运算,计算机内所有的数都以二进制存储,位运算就是对二进制位的操作
位运算符 | 说明 |
---|---|
<< | 按位左移,左移n位相当于乘以2的n次方 |
>> | 按位右移 ,左移n位相当于除以2的n次方 |
& | 按位与,二进制位数同且为1结果位为1 |
l | 按位或 ,二进制位数或有1结果位为1 |
^ | 按位异或 ,二进制位数不同结果位为1 |
~ | 按位取反,二进制位0和1结果位互换 |
按位左移例子
a=11
b=a<<3 # 将 a 左移三位
print("下面是十进制")
print(a)
print(b) # b=a*(2**3)
print("下面是二进制")
#print(bin(a)) # 转化为二进制显示
print(bin(a)[2:]) # 切片,去掉前面的:0b
print(bin(b)[2:]) # 二进制右边补上三个000
其他的例子
a=3
b=2
print("二进制:"+bin(a)[2:]+" a十进制:%d"%a) # 显示二进制数
print("二进制:"+bin(b)[2:]+" b十进制:%d"%b)
print("按位与:"+bin(a&b)+" 位与后是:%d"%(a&b)) # 都是1才是1
print("按位或:"+bin(a|b)+" 位或后是:%d"%(a|b)) # 有1就是1
print("按位取反"+bin(~a)+" 位反后是:%d"%~a) # 结果是:a 的倒数-1
上一篇:python入门基础教程
下一篇:FuckIt.py库让你的代码从此远离bug
就业培训申请领取
环球青藤
官方QQ群扫描上方二维码或点击一键加群,免费领取大礼包,加群暗号:青藤。 一键加群
最新文章
Python编程各地入口
环球青藤官方微信服务平台
刷题看课 APP下载
免费直播 一键购课
代报名等人工服务
Python编程热点排行