Почему элемент не заменяется на numpy .array? - PullRequest
0 голосов
/ 25 февраля 2020

Я хочу присвоить новое значение [i + 1] [j] массива, но, похоже, возникла проблема.

a = np.array(['#', '#', '#', '#', '#', '#','#', ' ', ' ', 'A', ' ', '#',
 '#', ' ', '#', 'P', ' ', '#',
 '#', ' ', ' ', ' ', ' ', '#',
 '#', 'P', ' ', ' ', ' ', '#',
 '#', '2', ' ', ' ', ' ', '#',
 '#', '#', '#', '#', '#', '#'])

print(len(a))
b = np.reshape(a,(7,6))
i = 0
j = 0
print(b[i + 1][j])
b[i + 1][j] = 'AP'
print(b[i + 1][j])

вывод:

#
A

Как я могу назначить «AP» вместо «#»?

1 Ответ

2 голосов
/ 25 февраля 2020

b.dtype (см. объекты типа данных ) равен <U1, что является строкой Юникода длины 1.

, это можно исправить с помощью

a = np.array(['#',..., '#'], dtype='<U2')

который будет принимать строки длиной до 2.

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