【发布时间】:2015-05-01 21:35:18
【问题描述】:
我正在尝试向文件写入一系列小端十六进制数字(填充零,并且没有“0x”前导)。
这些数字的大小由用户决定。这是我目前所拥有的:
file.write( format( struct.unpack( '<I', struct.pack( '>I', i ) ) [0], '08x' ))
其中 'i' 是 for 循环的当前迭代。
到目前为止,这仅打印 4 字节的数字,用 I 表示。如果用户定义大小,我该如何写数字?如果用户想要 6 字节,它应该写:
010000000000, 020000000000, etc
如果用户想要 2 字节,它应该写:
0100, 0200, etc
编辑:当我将“08x”更改为“012x”时,我得到:
0000000001000000
所以如果我想要一个 8 字节的数字,我不能只更改 '08x' 部分...
【问题讨论】:
标签: python hex endianness