如何在python中将二进制图像转换为内存中的数据结构?

时间:2012-02-22 10:48:11

标签: python

背景:

  • 我正在使用python 2.6.5

目标:

  • 读取二进制图像文件并将其表示在内存中。然后对它运行校验和。交付二进制表示以在mysql中存储为blob。

评论:

  • 我已阅读此SO thread
  • 我查看了struct模块。
  • 我也碰到了io模块。
  • 有了所有可用的选项,我不确定哪个是最佳解决方案。 BytesIO数据结构似乎适合我的需求。您认为哪一个符合我的要求?

2 个答案:

答案 0 :(得分:4)

我建议使用PIL(Python图像库)

http://effbot.org/imagingbook/pil-index.htm

将其保存为字符串,然后写入数据库。然后你可以使用字符串butter接口到PIL来读取它。

答案 1 :(得分:0)

>>> from binascii import crc32
>>> with open(filename, "rb") as f:
...     data = f.read()
...
>>> crc32(data)
361260080