Конвертировать 2D массив в словарь Python - PullRequest
0 голосов
/ 10 мая 2019

Я пытаюсь преобразовать двумерный массив с действительно определенным свойством в словарь. Свойство заключается в том, что значение внутри матрицы соответствует возможности перемещения в направлении (вверх, вниз, влево, вправо).

Я пытался сгладить его, а затем работать с новым массивом, но индексирование действительно вкладывается. У меня есть 2 вопроса: Как добавить ключи и значения в словарь? И могу ли я спросить, иду ли я в правильном направлении?

Пока я предполагаю, что я делаю что-то вроде:

# assuming the matrix to be:
# [[2, 1, 1],
#  [1, 2, 2],
#  [2, 1, 2]]
# so for instace if I am on coordinate on the upper row in the middle,
# I can move 1 position to the left, one position to right, and one pos down.
# I made this simple example to show what I am trying to do
b = [[2, 1, 1], [1, 2, 2], [2, 1, 2]]
a = make_flat_arr(b)
print(a)
position = [str((len(b))**2)] * (len(b))**2
for j in range(len(b)**2):
    position[j] = 'Pos{' + str(j % len(b)) + '}{' + str(j // len(b)) + '}'
    print(position[j])

for j in range(len(b)**2):
    # HOW TO APPEND A DICTIONARY KEY?
    if j - b[j] > -1:
        # add a left move
        # HOW TO APPEND A PAIR KEY-VAL?  
    elif j + b[j] < len(b):

    elif j -

1 Ответ

0 голосов
/ 10 мая 2019

Чтобы добавить ключи и значения в словарь, просто напишите: my_dictionary [key] = значение, после инициализации вашего словаря как my_dictionary = dict (). По вашему другому вопросу я думаю, что требуется немного больше информации.

...