【发布时间】:2020-07-22 22:27:35
【问题描述】:
默认情况下,Python 中的“左移”操作 (
例如: 100
在二进制表示中,我们可以看到 100 = 0b1100100(7 位)和 100
在 Python 3 中,执行逻辑左移的最佳方法是什么,其中位数保持不变,但值向左移?
例如: 100
在二进制表示中 100 = 0b1100100 和 100
【问题讨论】:
-
你可以使用模运算符:
(100 << 1) % 2**7给出 72 -
您必须在移位后使用
&操作限制所需的位,例如。 G。& 2**7 - 17 位。 -
你最后一段的字面解释是
int(bin(100)[3:]+'0',2)
标签: python python-3.x logical-operators bit-shift