Jak naprawić w pythonie: obiektu „numpy.ndarray” nie można wywołać


Typowym błędem, który możesz napotkać podczas używania NumPy w Pythonie jest:

 TypeError : 'numpy.ndarray' object is not callable

Ten błąd występuje zwykle podczas próby wywołania tablicy NumPy jako funkcji przy użyciu nawiasów okrągłych () zamiast nawiasów kwadratowych [ ] .

Poniższy przykład pokazuje, jak zastosować tę składnię w praktyce.

Jak odtworzyć błąd

Załóżmy, że mamy następującą tablicę NumPy:

 import numpy as np

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

Załóżmy teraz, że próbujemy uzyskać dostęp do pierwszego elementu tablicy:

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

TypeError : 'numpy.ndarray' object is not callable

Ponieważ użyliśmy nawiasów okrągłych () , Python uważa, że próbujemy wywołać tablicę NumPy x jako funkcję.

Ponieważ x nie jest funkcją, pojawia się błąd.

Jak naprawić błąd

Sposobem rozwiązania tego błędu jest po prostu użycie nawiasów kwadratowych [ ] podczas uzyskiwania dostępu do elementów tablicy NumPy zamiast nawiasów okrągłych () :

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

2

Wyświetlany jest pierwszy element tablicy (2) i nie otrzymujemy żadnych błędów, ponieważ użyliśmy nawiasów kwadratowych [ ] .

Zauważ też, że możemy uzyskać dostęp do wielu elementów tablicy jednocześnie, o ile używamy nawiasów kwadratowych [ ] :

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

10

Dodatkowe zasoby

Poniższe samouczki wyjaśniają, jak naprawić inne typowe błędy w Pythonie:

Jak naprawić: Błąd wartości: Indeks zawiera zduplikowane wpisy, nie można go zmienić
Jak naprawić: Błąd typu: Oczekiwany obiekt typu String lub Bytes
Jak naprawić: TypeError: Obiekt „numpy.float64” nie jest wywoływalny

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *