如何将二进制文件转换为长整数?

时间:2010-08-16 13:53:01

标签: python algorithm long-integer

在python中,长整数具有无限范围。有没有一种简单的方法将二进制文件(例如照片)转换为单个长整数?

2 个答案:

答案 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来转换字节块,这比每个字节更有效。

相关问题