كيفية الإصلاح في 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
نظرًا لأننا استخدمنا الأقواس الدائرية () ، تعتقد بايثون أننا نحاول استدعاء مصفوفة 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
مصادر إضافية
تشرح البرامج التعليمية التالية كيفية إصلاح الأخطاء الشائعة الأخرى في بايثون:
كيفية الإصلاح: خطأ في القيمة: يحتوي الفهرس على إدخالات مكررة، ولا يمكن إعادة تشكيلها
كيفية الإصلاح: خطأ في الكتابة: كائن السلسلة أو البايتات المتوقعة
كيفية الإصلاح: خطأ في الكتابة: الكائن “numpy.float64” غير قابل للاستدعاء