Hoe op te lossen in python: 'numpy.ndarray'-object kan niet worden opgevraagd


Een veel voorkomende fout die u kunt tegenkomen bij het gebruik van NumPy in Python is:

 TypeError : 'numpy.ndarray' object is not callable

Deze fout treedt meestal op wanneer u probeert een NumPy-array als een functie aan te roepen met behulp van ronde haakjes () in plaats van vierkante haakjes [ ] .

Het volgende voorbeeld laat zien hoe u deze syntaxis in de praktijk kunt gebruiken.

Hoe de fout te reproduceren

Stel dat we de volgende NumPy-array hebben:

 import numpy as np

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

Stel nu dat we proberen toegang te krijgen tot het eerste element van de array:

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

TypeError : 'numpy.ndarray' object is not callable

Omdat we ronde () haakjes hebben gebruikt, denkt Python dat we de NumPy x- array als een functie proberen aan te roepen.

Omdat x geen functie is, krijgen we een foutmelding.

Hoe u de fout kunt oplossen

De manier om deze fout op te lossen is door eenvoudigweg vierkante haakjes [ ] te gebruiken bij toegang tot NumPy-array-elementen in plaats van ronde haakjes () :

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

2

Het eerste element van de array (2) wordt weergegeven en we krijgen geen fouten omdat we vierkante haakjes [ ] hebben gebruikt.

Merk ook op dat we toegang hebben tot meerdere array-elementen tegelijk, zolang we vierkante haakjes [ ] gebruiken:

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

10

Aanvullende bronnen

In de volgende tutorials wordt uitgelegd hoe u andere veelvoorkomende fouten in Python kunt oplossen:

Oplossing: ValueError: Index bevat dubbele vermeldingen en kan niet worden aangepast
Oplossing: Typefout: verwacht tekenreeks- of bytesobject
Oplossing: TypeError: Object ’numpy.float64′ kan niet worden opgevraagd

Einen Kommentar hinzufügen

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert