以下是一些javascript代码
a >>> (c -= 8)) % 256
a = (a << 6) + f
Python中的那些行是否有任何快捷方式等效代码?
答案 0 :(得分:1)
python中没有零填充右移运算符>>>
,我们不能在表达式中使用短手赋值运算符(如c -= 8
)。所以它可以写成这样的
(a >> (c - 8)) % 256
a = (a << 6) + f
答案 1 :(得分:0)
是的,有。 Python Bitwise Operators
来自文档:
运营商:
x&lt;&lt; ÿ强>
返回x,其位向左移位y位(和新位 在右边是零)。这与乘以x相同 由2 ** y。
x&gt;&gt; ÿ强>
返回x,其位向右偏移y位。这是 与//'ing x by 2 ** y相同。
x&amp; ÿ强>
是“按位和”。如果相应,则输出的每个位为1 x和y的位是1,否则它是0。
x | ÿ强>
是“按位还是”。如果相应,则输出的每个位都为0 x和y的位为0,否则为1。
~x
返回x的补码 - 通过切换每个1得到的数字 对于0和每个0表示1.这与-x - 1相同。
x ^ y
是否为“按位异或”。输出的每一位都是相同的 如果y中的该位为0,则为x中的相应位,并且它是 如果y中的位为1,则x中的位的补码。