我想在Python中實現一個2d位圖類。該類將具有以下要求:我將如何實現位圖?
允許創建任意大小的2d位圖。即創建一個8×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是能夠執行二進制操作,但我想提出一些建議,如何最好用它們來實現這個類。