我希望在 Python 中实现一个 2d 位图类。该类将具有以下要求:
允许创建任意大小的 2d 位图。即创建一个 8 x 8 位图(8 个字节),例如:
bitmap = Bitmap(8,8)
提供一个 API 来访问这个 2d 映射中的位作为布尔值甚至整数值,即:
if bitmap[1, 2] or bitmap.get(0, 1)
能够将数据检索为打包的二进制数据。本质上,它将位图的每一行连接起来并作为二进制数据返回。它可以填充到最近的字节或类似的东西。
bitmap.data()
能够从检索到的二进制数据创建新地图:
new_bitmap = Bitmap(8, 8, bitmap.data())
我知道 Python 能够执行二进制操作,但我想要一些关于如何最好地使用它们来实现此类的建议。