البرمجة

حل مشكلة TypeError في Python: دمج ‘str’ و ‘int’

عند النظر إلى الكود الذي قدمته، يظهر أنك تواجه مشكلة في نوع البيانات (Data Type) في جزء معين من الكود الخاص بك. الخطأ الذي تظهره الرسالة هو “TypeError: cannot concatenate ‘str’ and ‘int’ objects”، وهذا يشير إلى محاولة دمج (concatenation) بين نص (string) وعدد صحيح (integer).

تحديدًا، الخطأ يظهر في السطر:

python
quantity1 += quantitybolt

عندما تقوم بإدخال الكمية (quantity1) التي تمثل نصًا، ثم تحاول إضافة الكمية (quantitybolt) التي تمثل عدد صحيح إليه، يحدث تضارب في أنواع البيانات.

لحل هذه المشكلة، يمكنك تحويل النص إلى عدد صحيح باستخدام دالة int()، ثم قم بإجراء الإضافة. يمكنك تعديل الكود كما يلي:

python
quantity1 = raw_input("Please select a quantity of 100mm bolts") quantitybolt = int(quantity1) quantity1 = str(int(quantity1) + quantitybolt)

بهذه الطريقة، ستقوم بتحويل quantity1 إلى عدد صحيح قبل إجراء الإضافة، وبالتالي يتجنب الخطأ المتعلق بنوع البيانات.

يُفضل دائمًا التحقق من أن أنواع البيانات متوافقة عند إجراء عمليات رياضية أو دمج لتجنب هذا النوع من الأخطاء.

المزيد من المعلومات

بالطبع، دعنا نتناول المزيد من المعلومات لفهم السياق وتقديم توجيهات أكثر دقة.

الكود الذي قدمته يظهر أنك تقوم بالتحقق من مطابقة بين قيمة gtin وbarcode[1]، وفي حال الاطمئنان على التطابق، تُطبع رسالة تفيد

أنك قد قمت بطلب كمية من البراغي بطول 100 مم. ثم، تُطلب من المستخدم إدخال كمية مرغوبة (quantity1)، ومن ثم يحدث الخطأ المتعلق بنوع البيانات عند محاولة إجراء الجمع.

لتوضيح، دعنا نفرض أن قيمة quantity1 التي تم إدخالها كانت “50”، وبينما تحاول إضافة الكمية (quantitybolt)، يحدث الخطأ لأن quantity1 لا تزال نصًا. لحل هذا، قمنا بتحويل quantity1 إلى عدد صحيح باستخدام int()، ثم أعدنا تحويل النتيجة إلى نص باستخدام str() لضمان أن النتيجة النهائية تكون نصًا.

يُفضل دائمًا أن تتأكد من أن البيانات التي تعمل عليها متوافقة من حيث النوع، وذلك لتجنب أخطاء النوع والتأكد من سلامة تنفيذ البرنامج.

إذا كنت بحاجة إلى مساعدة إضافية أو لديك أسئلة إضافية حول هذا الكود أو أي جانب آخر من البرمجة بلغة Python، فلا تتردد في طرحها.

مقالات ذات صلة

زر الذهاب إلى الأعلى
إغلاق

أنت تستخدم إضافة Adblock

يرجى تعطيل مانع الإعلانات حيث أن موقعنا غير مزعج ولا بأس من عرض الأعلانات لك فهي تعتبر كمصدر دخل لنا و دعم مقدم منك لنا لنستمر في تقديم المحتوى المناسب و المفيد لك فلا تبخل بدعمنا عزيزي الزائر