Python выдает ошибку TypeError: объект numpy.ndarray не является вызываемым, когда вы пытаетесь вызвать массив NumPy, как если бы он был функцией. Это происходит, если вы используете круглые скобки( ) вместо квадратных скобок [ ] для извлечения элементов из списка.
Чтобы исправить TypeError: 'numpy.ndarray' object is not callable, вы можете использовать квадратные скобки([ ]) для доступа к элементам в массиве numpy и избегать использования круглых(( )) скобок.
|
1 2 3 4 5 |
import numpy as np arr = np.array([11, 21, 19, 46]) print(arr()) |
Выход
|
1 |
TypeError: 'numpy.ndarray' object is not callable |
Используя метод np.array(), мы создали массив, использовали его как функцию и вызывали его с помощью двойной скобки.
Ndarrays не являются функциями, поэтому вы не можете вызывать их так, как вызываете обычную функцию.
Как исправить
|
1 2 3 4 5 |
import numpy as np arr = np.array([11, 21, 19, 46]) print(arr[2]) |
Выход
|
1 |
19 |
В этом коде мы получаем доступ к третьему элементу массива, который равен 19. Индексация массива начинается с 0, поэтому третий элемент будет иметь индекс «2». Вот как вы разрешаете такого рода TypeError.
Numpy ndarrays может хранить и манипулировать большими массивами однородных данных в Python. В Python нет массивов, но использование сторонней библиотеки, такой как «Numpy», позволяет использовать этот тип структуры данных в нашем приложении.
Альтернативное решение
Используйте соответствующий метод или атрибут объекта ndarray для доступа к данным массива или манипулирования ими.
Например, ndim, size и shape — это методы, которые вы можете применить к объекту ndarray как есть.
|
1 2 3 4 5 |
import numpy as np arr = np.array([11, 21, 19, 46]) print(arr.size) |
Выход
|
1 |
4 |
Массив состоит из четырех элементов, а его размер равен 4. Вот почему атрибут размера возвращает 4 в качестве вывода.
