Многофункциональный массив хранения в Python - PullRequest
0 голосов
/ 07 марта 2019

Я программирую игру на python3.6 . На доске есть несколько пешек , которые являются экземплярами класса 'пешка'. Также на доске есть валунов , которые являются экземплярами валунов класса. Я просто хочу хранить эти пешки и валуны в массиве , как numpy.array.

У меня 2 проблемы:

  • В массиве есть другой тип объекта, который невозможен для numpy.array

  • Как я могу представить пустую ячейку на своей доске, потому что я не могу использовать объект, тип которого не такой, как у других.

Как я могу решить эти две проблемы? Есть ли уже объект, который может представлять сетку, массив и который принимает другой тип?

1 Ответ

1 голос
/ 07 марта 2019

Использование np.dtype(object): np.array(board, dtype=np.dtype(object))

Что касается пустых ячеек: просто установите их на None.


Редактировать : как полагают некоторые, вам может вообще не понадобиться массив numpy. Список списков или указание с индексами кортежей может решить вашу проблему просто отлично и избавит от накладных расходов при использовании numpy.

...