有人可以帮我构建一个简单的函数来提取Python中的最低有效位和最高有效位吗?
Java 中的 Ex 代码:
UUID u = UUID.fromString('a316b044-0157-1000-efe6-40fc5d2f0036');
long leastSignificantBits = u.getLeastSignificantBits();
private UUID(byte[] data) {
long msb = 0;
long lsb = 0;
assert data.length == 16 : "data must be 16 bytes in length";
for (int i=0; i<8; i++)
msb = (msb << 8) | (data[i] & 0xff);
for (int i=8; i<16; i++)
lsb = (lsb << 8) | (data[i] & 0xff);
this.mostSigBits = msb;
this.leastSigBits = lsb;
}
Run Code Online (Sandbox Code Playgroud)
--> 输出值:-1160168401362026442
旧帖子但仍然......只是想我会添加这个:
import struct
import uuid
u = uuid.UUID('c88524da-d88f-11e9-9185-f85971a9ba7d')
msb, lsb = struct.unpack(">qq", u.bytes)
Run Code Online (Sandbox Code Playgroud)
这给出了值:
(-3997748571866721815,-7960683703264757123)...如果我将这些输入到java.util.UUID构造函数中,它会返回uuid“c88524da-d88f-11e9-9185-f85971a9ba7d”