كيفية الإصلاح: خطأ في الكتابة: الكائن 'numpy.float64' غير قابل للاستدعاء
الخطأ الذي قد تواجهه عند استخدام بايثون هو:
TypeError : 'numpy.float64' object is not callable
يمكن أن يحدث هذا الخطأ في سيناريوهين مختلفين:
- السيناريو 1: الضرب دون استخدام العلامة *
- السيناريو 2: فشل في استخدام وظيفة NumPy Min
توضح الأمثلة التالية كيفية تصحيح هذا الخطأ في كل سيناريو.
السيناريو 1: الضرب دون استخدام العلامة *
لنفترض أننا نحاول ضرب مصفوفتين NumPy دون استخدام علامة الضرب (*) كما يلي:
import numpy as np #define arrays x = np. array ([1, 2, 3, 4, 5]) y = np. array ([12, 14, 14, 19, 22]) #attempt to multiply two arrays together combo = (x)(y) #view result print (combo) TypeError : 'numpy.float64' object is not callable
نتلقى خطأ TypeError لأننا لم نستخدم علامة الضرب (*) عند محاولة ضرب الصفيفين.
طريقة تجنب هذا الخطأ هي التأكد من أننا استخدمنا علامة الضرب:
import numpy as np #define arrays x = np. array ([1, 2, 3, 4, 5]) y = np. array ([12, 14, 14, 19, 22]) #multiply two arrays together combo = (x)*(y) #view result print (combo) [12 28 42 76 110]
لاحظ أننا لا نتلقى أي أخطاء هذه المرة.
السيناريو 2: فشل في استخدام وظيفة NumPy Min
لنفترض أننا استخدمنا الكود التالي لمحاولة العثور على الحد الأدنى لقيمة مصفوفة NumPy:
import numpy as np #define array of data data = np. array ([3.3, 4.1, 4, 5.6, 8.1, 9.9, 9.7, 10.2]) #attempt to find minimum value of array min_val = min (data) #view minimum value print (min_val) TypeError : 'numpy.float64' object is not callable
نتلقى خطأ TypeError لأننا استخدمنا الدالة min() .
بدلًا من ذلك، نحتاج إلى استخدام np.min() كما يلي:
import numpy as np #define array of data data = np. array ([3.3, 4.1, 4, 5.6, 8.1, 9.9, 9.7, 10.2]) #attempt to find minimum value of array min_val = np. min (data) #view minimum value print (min_val) 3.3
لاحظ أننا لا نتلقى أي أخطاء هذه المرة.
مصادر إضافية
تشرح البرامج التعليمية التالية كيفية إصلاح الأخطاء الشائعة الأخرى في بايثون:
كيفية الإصلاح: تتداخل الأعمدة ولكن لم يتم تحديد أي لاحقة
كيفية الإصلاح: لا يحتوي الكائن “numpy.ndarray” على سمة “إلحاق”.
كيفية الإصلاح: إذا كنت تستخدم جميع القيم العددية، فستحتاج إلى تمرير فهرس
كيفية الإصلاح: خطأ القيمة: غير قادر على تحويل float NaN إلى int