如何在Python 3中以二进制形式将整数写入文件中?例如,我想将6277101735386680763835789423176059013767194773182842284081写入一个二进制文件,正好有24个字节(无符号,我只能使用正整数)。我怎样才能做到这一点?我试过如下:在Python中以二进制形式写入整数文件
struct.pack("i", 6277101735386680763835789423176059013767194773182842284081)
这导致
ValueError: cannot fit 'int' into an index-sized integer
我已经尝试了一些其他格式( “L”, “Q”)相同,但这些也导致错误:
struct.error: argument out of range
如果我可以将整数转换为正好24个字节,我就可以写入文件,因为我知道该怎么做。但是,我似乎无法将整数转换为字节。
此外,如何确保每个整数写入正好24个字节?我也会写较小的数字(1000,2000,1598754,12),但是这些也应该占用24个字节。
然后我怎样才能从文件中读取整数?
http://code.activestate.com/recipes/576617-converting-arbitrary-size-python-整数到分组/ – 2014-12-01 22:43:03