Как мне установить элемент массива numpy в строку из более чем одного символа? - PullRequest
0 голосов
/ 22 февраля 2019

Например, в следующем коде, когда я пытаюсь установить элемент массива для объединенной строки chr((r+97)) + str(c+1), он только устанавливает элемент в первую цифру строки.Как я могу это исправить?

row =   3
col =   3  
sboard = np.empty((row,col),dtype=str)
val = chr((r+97)) + str(c+1)
print(val)
sboard[r,c] = val            
print(sboard)

Этот код выводит

[['' '' '']
 ['' '' '']
 ['' '' 'c']]

, а не

[['' '' '']
 ['' '' '']
 ['' '' 'c3']]

Очень признателен, спасибо

1 Ответ

0 голосов
/ 22 февраля 2019

Попробуйте использовать chararray.

Заменить:

 sboard = np.empty((row,col),dtype=str)

на

 sboard = np.chararray([3,3],2) # This assumes all of your strings with be 2 characters.
 sboard[:] = ''
...