对于开发工程师来说,python相信大家都不会陌生,今天给大家分享一篇python教程,主要介绍python位运算符的使用,希望对这方面感兴趣的你有所帮助!
Python位运算符有按位与&,按位或|,按位异或^,按位取反~ ,左<<,右>>
1、& 按位与运算符
参与运算的两个值,如果两个相应位都为1,则该位的结果为1,啥意思呢?请继续往下看
假设a = 60; 和b = 13; a&b 是多少?在pycharm中,运行一下,就可以看到结果了
但是很多没有计算机基础的,就搞不懂为什么了,现在教大家怎么算,
第一步,要把十进制的数转换成二进制的数
a=13,13转换成二进制为:0011 1100 怎么转换成,除以2
第二步,到过来读,结果为:11 1100
第三步,不足8位的,前面补零,要补二位,0011 1100
在按照上面的方法,得到13的对应的二进制,b = 0000 1101
第四步,计算,果两个相应位都为1,则该位的结果为1,竖着写
1)、最后一个 0和1结果是0
0011 1100 这个是60对应的二进制
0000 1101 这个是13对应的二进制
---------------- ----------------
0
2)、第二位 0和0,结果是0
0011 1100 这个是60对应的二进制
0000 1101 这个是13对应的二进制
3)、第三位,1和1,结果为1
0011 1100
0000 1101
----------------
11 0
最后有结果
0011 1100 这个是60对应的二进制
0000 1101 这个是13对应的二进制
----------------
0000 1100 这是计算的结果,
第五步,把二进制0000 1100 转成十进制
这个又怎么转换呢? 1*2的3次方+1*2的2次方,8加4等12
2、| 按位或运算符
只要对应的二个二进位有一个为1时,结果位就为1。 (a | b) 输出结果 61 ,二进制解释: 0011 1101
3、^ 按位异或运算符
当两对应的二进位相异时,结果为1 (a ^ b) 输出结果 49 ,二进制解释: 0011 0001
4、~ 按位取反运算符
对数据的每个二进制位取反,即把1变为0,把0变为1。~x 类似于 -x-1 (~a ) 输出结果 -61 ,二进制解释: 1100 0011, 在一个有符号二进制数的补码形式。
5、<< 左移动运算符
运算数的各二进位全部左移若干位,由"<<"右边的数指定移动的位数,高位丢弃,低位补0。 a << 2 输出结果 240 ,二进制解释: 1111 0000
6、>> 右移动运算符
把">>"左边的运算数的各二进位全部右移若干位,">>"右边的数指定移动的位数,a >> 2 输出结果 15,二进制解释:0000 1111
友情提醒:每一个操作符都要能够熟练的运用,特别是需要考笔试的人,不然碰到这些就做不出来了,有不明白的可以加微信(ziwenseo)
热门课程
专业讲师指导 快速摆脱技能困惑相关文章
多种教程 总有一个适合自己专业问题咨询
你担心的问题,火星帮你解答《黑神话:悟空》作为一款现象级中国游戏,其成功离不开多种先进计算机技术的支持。本文将深入解析该游戏背后的关键技术,包括虚幻引擎......
在游戏开发领域,Unity和Unreal Engine(虚幻引擎)都是备受推崇的游戏引擎,但它们各自拥有不同的特点和优势。
春节之后大量抢人!这6个行业是转行首选,进去1年顶3年!火星毕业就能进
春节后求职,哪些行业进去能立马涨薪?打破信息差很关键!
还没毕业,就去帮电视台拍活动,作品被主任说“非常好”!猜猜是哪个专业呀?
回想过去,电子游戏里的草其实并不是真正的草。开发者们只是简单地把草的纹理直接贴在游戏关卡的地板上
在火星的就业指导老师那里,经常收到同学们这样、那样的提问。其中有一些共性问题,就业老师会根据自己丰富的经验,为同学们给出合适的回答。