我正在寻找一个功能谁做:
def unsignedToByteString(size, value):
// ...
return output
unsignedToByteString(2, 0x5678) = '\x56\x78'
unsignedToByteString(4, 1234) = '\x00\x00\x04\xd2'
参数:
有没有什么内置函数可以做到这一点。 如果不是的话,那怎么容易做到。你知道吗
更新:我发现chr
函数的值小于126到一个十六进制字符。(我想我可以用它来建立一个字符串)
chr(0xab) = '\xab'
您可以从使用
hex
函数开始。它将1234
输入转换成'0x4d2'
,0x5678
将保持'0x5678'
。然后可以使用zfill
方法将其设置为所需的大小。剩下的就是在上面使用decode('hex')
。代码如下:如果值适合1、2、4或8个字节,则可以使用^{} module :
如果你需要编码更大的值,你必须自己把它分成更小的块。例如,对于128位:
作为一行:
相关问题 更多 >
编程相关推荐