【python技巧】“&”、“>>”等符号操作
【python技巧】
1)【关于‘&’ :按照二进制进行与操作,可以用作判断奇偶】【https://zhidao.baidu.com/question/308587899.html】
& 是位运算;and 是逻辑运算。
【举例1】
>>> a = 1
>>> b = 2
>>> #1 的二进制是 1,2的二进制是 10
>>> a&b
0
>>> a and b
2
【说明】
a&b=01&10=00=0
python 中的and从左到右计算表达式,若所有值均为真,则返回最后一个值,若存在假,返回第一个假值。所以,实例‘a and b’返回的是 2,也就是最后一个真值。
【举例2】
对于(m+n) &1
若结果为0,则(m+n)是偶数;若结果为1,则(m+n)为奇数;
2)关于“>>”,用来二进制位移。【参考:https://zhidao.baidu.com/question/310628609.html】
>> 是右移,右移1位相当于除以2。
<< 是左移,末位补0,类比十进制数在末尾添0相当于原数乘以10,x<<1是将x的二进制表示左移一位,相当于原数x乘2。比如整数4在二进制下是100,4<<1左移1位变成1000(二进制),结果是8。