Нахождение индексов элементов, равных нулю в данной числовой матрице - PullRequest
0 голосов
/ 29 октября 2019

Я пытаюсь найти индексы ненулевых элементов в целочисленной матрице 3 * 3, используя numpy как часть задачи tictactoe. Я понимаю, что np.where является хорошим вариантом для этого случая, и попробовал его, вывод, который я получаю, выглядит не совсем правильно. Можете ли вы помочь мне код этой части? Ниже приведен мой частичный код.

input: s, целочисленная матрица измерения 3 * 3 пример:

output: m, список возможных следующих ходов, где каждый следующий ходкортеж a (r, c), где r обозначает номер строки, c обозначает номер столбца.

пример:

[код]

m = np.where(s==0)

1 Ответ

1 голос
/ 29 октября 2019

Вот быстрое решение:

import numpy as np

s = np.matrix('0, 0, 0; 0, 1, 0; 0, 0, 0')

m = np.where(s==0)
m = list(zip(m[0], m[1]))

print(m)

s - матрица ввода, где вы видите, что берется средний квадрат, а затем мы используем np.where(), как вы это сделали, что даетдва массива, затем используйте zip() для объединения их в кортежи и list() для преобразования вывода в список кортежей допустимых ходов.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...