有没有办法让python产生与java相同的按位左移的结果?

mar*_* xu 4 python java bit

我必须将一些函数从 Java 代码转移到 Python。但左移返回不同的结果。并且 Python 在 Java 中缺少 >>> 运算符

如何使它们相同?蟒蛇:6116937115306182825 << 11 = 12527487212147062425600

java:6116937115306182825 << 11 = 2147986098276878336

Jor*_*ley 6

java的位数有限(64)而python没有......所以你需要强制它使用正确的位数(64)

(6116937115306182825 << 11) & 0xFFFFFFFFFFFFFFFF
Run Code Online (Sandbox Code Playgroud)