Як виправити в python: об’єкт 'numpy.ndarray' не можна викликати


Поширена помилка, з якою ви можете зіткнутися під час використання NumPy у Python:

 TypeError : 'numpy.ndarray' object is not callable

Ця помилка зазвичай виникає під час спроби викликати масив NumPy як функцію, використовуючи круглі дужки () замість квадратних [ ] .

У наступному прикладі показано, як використовувати цей синтаксис на практиці.

Як відтворити помилку

Припустимо, у нас є наступний масив NumPy:

 import numpy as np

#create NumPy array
x = np. array ([2, 4, 4, 5, 9, 12, 14, 17, 18, 20, 22, 25])

Тепер припустімо, що ми спробуємо отримати доступ до першого елемента масиву:

 #attempt to access the first element in the array
x(0)

TypeError : 'numpy.ndarray' object is not callable

Оскільки ми використовували круглі дужки () , Python вважає, що ми намагаємося викликати масив NumPy x як функцію.

Оскільки x не є функцією, ми отримуємо помилку.

Як виправити помилку

Щоб вирішити цю помилку, просто використовуйте квадратні дужки [] під час доступу до елементів масиву NumPy замість круглих дужок () :

 #access the first element in the array
x[0]

2

Перший елемент масиву (2) відображається, і ми не отримуємо жодних помилок, оскільки ми використали квадратні дужки [ ] .

Також зауважте, що ми можемо отримати доступ до кількох елементів масиву одночасно, якщо використовувати квадратні дужки [] :

 #find sum of first three elements in array
x[0] + x[1] + x[2]

10

Додаткові ресурси

У наступних посібниках пояснюється, як виправити інші типові помилки в Python:

Як виправити: ValueError: індекс містить повторювані записи, не можна змінити форму
Як виправити: помилка типу: очікуваний рядок або об’єкт Bytes
Як виправити: TypeError: Об’єкт ‘numpy.float64’ не можна викликати

Додати коментар

Ваша e-mail адреса не оприлюднюватиметься. Обов’язкові поля позначені *