我该如何实现位图?
我想在Python中实现一个二维位图类。这个类需要满足以下要求:
能够创建任意大小的二维位图。比如说,创建一个8 x 8的位图(8个字节),可以像这样:
bitmap = Bitmap(8,8)
提供一个接口,可以以布尔值或整数值的形式访问这个二维位图中的每一位,也就是说:
if bitmap[1, 2] or bitmap.get(0, 1)
能够将数据以压缩的二进制形式提取出来。简单来说,就是把位图的每一行连接起来,然后返回为二进制数据。可能会填充到最近的字节或类似的方式。
bitmap.data()
能够根据提取到的二进制数据创建新的位图:
new_bitmap = Bitmap(8, 8, bitmap.data())
我知道Python可以进行二进制操作,但我希望能得到一些建议,关于如何最好地使用这些操作来实现这个类。