这就是我目前所拥有的。有没有更好的方法来做到这一点?
import struct
def int32_to_uint32(i):
return struct.unpack_from("I", struct.pack("i", i))[0]
这就是我目前所拥有的。有没有更好的方法来做到这一点?
import struct
def int32_to_uint32(i):
return struct.unpack_from("I", struct.pack("i", i))[0]
不确定它是否“更好”...
import ctypes
def int32_to_uint32(i):
return ctypes.c_uint32(i).value
使用 numpy 例如:
import numpy
result = numpy.uint32( numpy.int32(myval) )
甚至在数组上,
arr = numpy.array(range(10))
result = numpy.uint32( numpy.int32(arr) )
我刚开始学习 python,但是像这样简单的东西适用于有符号 32 位整数范围内的值
def uint(x):
if x < 0:
return hex(0xffff_ffff - abs(x) + 1)
else:
return hex(x)