怎么做>>和<<在python中做

时间:2014-02-24 04:52:47

标签: python python-3.x

如果我print(1 >> 2)我得到0。

如果我print(2 << 1)我得到4。

如果我print(9 << 3)我得到72

如果我print(3 >> 9)我得到0

>><<在python中做了什么?

2 个答案:

答案 0 :(得分:6)

它们是按位移位运算符。例如,2具有二进制当量00000010,因此2&lt;&lt; 1是00000010左移1次。这产生00000100,即4.

1&gt;&gt; 2是00000001右移2次,即00000000(1虽然在第一次移位后从1落下,所以1>&gt; 1也是0),显然是0。

答案 1 :(得分:3)

按位向左移位,向右移位。它们大致等于加倍(<<)或减半(>>),就像十进制左移大致相当于乘以10而十进制右移大致等于除以10。