• 0

كيف أحل هذا الخطأ أثناء تحويل سلسلة نصية إلى tuple في بايثون؟

أحاول تحويل سلسلة نصية إلى tuple، وعندما أبحث في جوجل عن إجابات أحصل على شيفرات برمجية مشابهة لهذه:

l = [4,5,6]
tuple(l)

وعندما أقوم بتطبيق ذلك، أحصل على هذا الخطأ:

TypeError: 'tuple' object is not callable

فكيف أحل هذه المشكلة؟

انشر على الشّبكات الاجتماعية


رابط هذه المساهمة
  • 0

يجب أن يعمل السطران اللذان كتبتهما بدون مشاكل، فدالة tuple() تقوم بتحويل السلاسل النصية إلى tuple كما في المثال التالي:

In [1]: l = [4,5,6]

In [2]: tuple
Out[2]: <type 'tuple'>

In [3]: tuple(l)
Out[3]: (4, 5, 6)

لكن إذا أعدت تعريف tuple لتصبح متغير tuple بدلا من type tuple كما في المثال التالي:

In [4]: tuple = tuple(l)

In [5]: tuple
Out[5]: (4, 5, 6)

وسوف تحصل على رسالة خطأ بما أن tuple لا يمكن استدعاؤها كما في المثال التالي:

In [6]: tuple(l)
TypeError: 'tuple' object is not callable

ويمكنك الحصول على التعريف الأصل لـ tuple عن طريق إعادة تشغيل مفسر باثون أو عن طريق حذف دالة tuple كالتالي:

In [6]: del tuple

In [7]: tuple
Out[7]: <type 'tuple'>

وهذا النوع من الأخطاء شائع عند المبتدئين ونادر عند المحترفين إلا في حالة لو كان أكثر من شخص يعمل على برمجة نفس السكربت.

انشر على الشّبكات الاجتماعية


رابط هذه المساهمة

يجب أن تكون عضوًا لدينا لتتمكّن من التعليق

انشاء حساب جديد

يستغرق التسجيل بضع ثوان فقط


سجّل حسابًا جديدًا

تسجيل الدخول

تملك حسابا مسجّلا بالفعل؟


سجّل دخولك الآن