我想要一些数字的字节表示。例如,字节数组的第一个字节具有含义(0-255),第二个字节具有另一个含义(0-255),依此类推。因为字符串是字节数组,所以如果我想存储97和66,我可以很容易地将它表示为"aB“。现在,如果我想让第三个和第四个字节表示一个介于0和65535之间的数字,我该怎么做?
Ps:我使用的是Python2.5,所以我不能利用最近引入的函数来操作字节(比如bytes()和bytearray())。
编辑: 0-65536 -> 0-65535
发布于 2010-10-20 19:54:04
你想要struct。
>>> import struct
>>> struct.pack('<HBB', 12345, 97, 66)
'90aB'发布于 2010-10-20 19:51:52
(如果您想表示0-65536,则会有一点困难,所以我假设您指的是0-65535。)
只需将x>>8存储在一个字节中,而将x&0xff存储在另一个字节中。您还可以使用Python的struct模块将不同类型的数据打包成字节。
https://stackoverflow.com/questions/3977403
复制相似问题