在python中不使用struct的整数到字节

Geh*_*sia 1 python byte struct integer

我需要使用运行Python 1.5.2+(!!!)的嵌入式系统,只需很少的模块.并且没有"struct"模块可用...以下是可用模块的列表:

marshal
imp
_main_
_builtin_
sys
md5
binascii
Run Code Online (Sandbox Code Playgroud)

是的就是这样,没有结构模块......

所以,我需要创建一个4字节的无符号短整数表示,以发送到串行...

使用struct:

date = day + month * 32 + (year - 2000) * 512
time = 100 * hour + minute
data = struct.pack(b'HH', date, time)
Run Code Online (Sandbox Code Playgroud)

在2个字节上的2个字节时间的日期,每个人都很高兴...

但是如果不使用'struct'模块,我该怎么做?

TJD*_*TJD 5

你可以这样做:

x = 0xabcd

packed_string = chr((x & 0xff00) >> 8) + chr(x & 0x00ff)
Run Code Online (Sandbox Code Playgroud)