在python中,长整数具有无限范围。有没有一种简单的方法将二进制文件(例如照片)转换为单个长整数?
答案 0 :(得分:3)
这是一种方法。
def file_to_number(f):
number = 0
for line in f:
for char in line:
number = ord(char) | (number << 8)
return number
您最终可能会获得MemoryError
。
答案 1 :(得分:3)
使用bitstring模块只是:
bitstring.BitString(filename='your_file').uint
如果您愿意,可以使用int
属性获取有符号整数。
在内部,这是使用struct.unpack
来转换字节块,这比每个字节更有效。