文档地址 -- https://docs.python.org/3/library/struct.html
import struct
本机高低端内存地址 sys.byteorder : 'little'
format>>>
|
>>> from struct import *
>>> pack('llll', 1, 2, 3, 4)
b'\x01\x00\x00\x00\x00\x00\x00\x00\x02\x00\x00\x00\x00\x00\x00\x00\x03\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00'
>>> pack('hhhh', 1, 2, 3, 4)
b'\x01\x00\x02\x00\x03\x00\x04\x00'
>>> unpack('llll', b'\x01\x00\x00\x00\x00\x00\x00\x00\x02\x00\x00\x00\x00\x00\x00\x00\x03\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x00\x00\x00\x00')
(1, 2, 3, 4)
>>> unpack('llll', b'\x01\x00\x00\x00\x00\x00\x00\x00\x02\x00\x00\x00\x00\x00\x00\x00\x03\x00\x00\x00\x00\x00\x00\x00\x04\x00\x00\x00\x00\x02\x00\x00')
(1, 2, 3, 2199023255556)
>>> pack('ci', b'*', 0x1314520)
b'*\x00\x00\x00 E1\x01'
>>> pack('ic', 0x1314520, b'*')
b' E1\x01*'
>>> calcsize('h')
2
>>> calcsize('i')
4
>>> calcsize('l')
8
>>> calcsize('hhl')
16
>>> calcsize('lhh')
12