在Python中,长整数具有无限范围。有没有简单的方法将二进制文件(例如照片)转换为单个长整数?如何将二进制文件转换为长整数?
1
A
回答
3
使用bitstring模块,它只是:
bitstring.BitString(filename='your_file').uint
如果你愿意,你可以使用int
财产得到一个有符号整数。
在内部,这是使用struct.unpack
来转换字节块,这比每个字节做的更有效。
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
因为它是一个二进制文件,我不确定它是否有意义迭代线条(我不确定它是否有害,但是在这种情况下线条没有意义)。 – 2010-08-16 14:13:27
+0
当然;它只是从文件中半懒惰地读取数据的最简单的方法。如果在f.read_chunks(4096):'有大块的话,那么我会用它。 – habnabit 2010-08-16 14:29:57
相关问题
- 1. 如何将二进制转换为十进制与长整数?
- 2. 将64位二进制转换为长整数
- 3. 在C中将整数转换为二进制文件#
- 4. 将二进制IOstream转换为文件
- 5. 如何将二进制数字转换为erlang中的整数?
- 6. 如何将二进制文件转换为字节数组?
- 7. 长整数的小数转换为二进制
- 8. 如何将二进制文件转换为numpy文件?
- 9. SystemVerilog:如何将二进制向量转换为整数
- 10. 如何将整数转换为VHDL中的二进制表示?
- 11. 如何将十进制转换为固定长度的二进制文字
- 12. 如何将二进制数(32位)转换为十进制数?
- 13. 如何将二进制数字转换为八进制数字?
- 14. 将原始文件(二进制数据)转换为XML文件
- 15. 如何将十六进制文件转换为二进制文件?
- 16. 如何将十六进制文件转换为二进制数组Android,Java
- 17. 如何将十六进制数字转换为C++中的二进制文件?
- 18. 将二进制长字符串转换为十六进制c#
- 19. 如何将int数从十进制转换为二进制
- 20. 如何将带有数字的文本文件转换为二进制文件?
- 21. 二进制如何转换为硬件?
- 22. 将二进制数字转换为二进制数字
- 23. 如何将数字(十进制)转换为二进制(二进制)数字和从二进制到十进制?
- 24. 如何将ASCII转换为二进制文件?
- 25. 如何将char转换为二进制文件?
- 26. 如何将armv7二进制文件转换为i386/x86_64
- 27. 如何在Java中将字节转换为二进制文件?
- 28. 计算机如何将图像转换为二进制文件?
- 29. 如何将二进制文件转换为ASCII
- 30. 将二进制转换为十进制
你能详细说明一下用例吗?如果你指定了Python版本,它也会有很大的帮助。 – Skurmedel 2010-08-16 13:57:39