Ответ 1
Что вы создаете с помощью
a = np.array(1)
- это нульмерный массив, и они не могут быть проиндексированы. Вам также не нужно индексировать его - вы можете использовать a
напрямую, как если бы это было скалярное значение. Если вам действительно нужно значение другого типа, скажем float
, вы можете явно преобразовать его с помощью float(a)
. Если вам нужно это в базовом типе массива, вы можете использовать a.item()
или a[()]
.
Обратите внимание, что нульмерный массив изменчив. Если вы измените значение одной записи в массиве, это будет видно по всем ссылкам на массив, который вы сохранили. Используйте a.item()
, если вы хотите сохранить неизменяемое значение.
Если вам нужен одномерный массив с одним элементом, используйте
a = np.array([1])
Теперь вы можете получить доступ к одному элементу с помощью a[0]
.