أثناء عملية البرمجة ، قد يواجه المطور العديد من الأخطاء التي يمكن أن تسبب سلوك رمز غير متوقع. واحد من هذه الأخطاء هو تيبيرور: لا يمكنك الجمع بين ستر مع إنت في ستر ، والذي يحدث غالبا عند محاولة الجمع بين سلسلة ورقم.
يشير خطأ تيبيرور إلى أن أنواع البيانات التي يعمل البرنامج معها غير متوافقة. في هذه الحالة ، محاولة الجمع بين سلسلة ورقم في سلسلة غير مقبولة. لا يمكن لبيثون تحويل رقم تلقائيا إلى سلسلة وإجراء عملية تسلسل سلسلة منتظمة.
على سبيل المثال ، إذا كان متغير الاسم يحتوي على السلسلة "أليس" ويحتوي متغير العمر على الرقم 25 ، فقد تتسبب محاولة دمجها باستخدام عامل التشغيل "+" في حدوث خطأ. لدمج السلاسل والأرقام بشكل صحيح ، يجب عليك تحديد تحويل رقم إلى سلسلة بشكل صريح ، على سبيل المثال ، باستخدام دالة ستر ().
مثال:
الاسم = "أليس"
العمر = 25
الرسالة = الاسم + " هو "+ شارع (العمر) + "سنة"
في هذا المثال ، لدمج السلسلة "أليس" مع الرقم 25 ، تحتاج إلى تحويل الرقم إلى سلسلة باستخدام وظيفة ستر () ، وفقط ثم تنفيذ عملية التسلسل.
- الأسباب والمشاكل المحتملة
- كيفية إصلاح خطأ تيبيرور: لا يمكنك الجمع بين ستر مع إنت في ستر
- نصائح لمنع خطأ النوع: لا يمكنك الجمع بين شارع مع الباحث في شارع
- أمثلة التعليمات البرمجية مع خطأ تيبيرور: لا يمكنك الجمع بين ستر مع إنت في ستر
- سؤال وجواب
- كيف يمكنني إصلاح الخطأ "تابيرور: لا يمكنك الجمع بين ستر مع إنت في ستر"?
- لماذا الخطأ "تيبيرور: لا يمكن الجمع بين ستر مع إنت في ستر" تحدث?
- ما هو معنى الخطأ "تابيرور: لا يمكن الجمع بين ستر مع إنت في ستر"?
- كيف يمكنني تجنب الخطأ "تيبيرور" : فمن المستحيل الجمع بين شارع مع الباحث في شارع"?
الأسباب والمشاكل المحتملة
خطأ تيبيرور: لا يمكنك الجمع بين ستر مع إنت في ستر يحدث في بيثون عندما نحاول الجمع بين سلسلة (ستر) وقيمة رقمية (إنت) في سلسلة واحدة. يحدث هذا عند استخدام عملية التسلسل " + "أو تنسيق السلاسل" {}".
يمكن أن تحدث أخطاء من هذا النوع لعدة أسباب:
- الاستخدام غير الصحيح لمشغل التسلسل: يمكن أن يحدث خطأ إذا حاولت عن طريق الخطأ الجمع بين رقم وسلسلة نتيجة الاستخدام غير الصحيح للمشغل"+". على سبيل المثال:
العمر = 25
رسالة = " لي "+ العمر + "سنوات" # خطأ: لا يمكنك الجمع بين شارع مع الباحث في شارع
لإصلاح الخطأ ، تحتاج إلى تحويل الرقم إلى سلسلة باستخدام وظيفة ستر () ، وبالتالي فإن سلسلة وعدد يمكن الجمع بين:
العمر = 25
الرسالة = " أنا " + شارع (العمر) +" سنوات " # يعمل بشكل صحيح
- الاستخدام غير الصحيح لتنسيق السلسلة: يمكن أن يحدث خطأ أيضا عند محاولة تنسيق السلاسل إذا لم تحدد الطريقة الصحيحة لتحويل رقم إلى سلسلة. على سبيل المثال:
العمر = 25
الرسالة = " عمري {} سنة."تنسيق (العمر) # خطأ: لا يمكنك الجمع بين شارع مع الباحث في شارع
لإصلاح الخطأ ، تحتاج إلى تحديد نوع البيانات المراد تنسيقه بشكل صريح. يمكنك استخدام رموز التنسيق لهذا ، على سبيل المثال:
العمر = 25
الرسالة = " عمري {} سنة."تنسيق(شارع (العمر)) # يعمل بشكل صحيح
أو يمكنك استخدام و سلسلة وتمكين تحويل عدد إلى سلسلة الحق داخل الأقواس المتعرجة:
العمر = 25
الرسالة = و" عمري {عمر} سنة " # يعمل بشكل صحيح
- أنواع البيانات غير الصحيحة: يمكن أن يحدث خطأ أيضا إذا كان المتغير يحتوي على نوع بيانات غير صحيح لا يمكن دمجه مع سلسلة. على سبيل المثال:
العمر = "25"
رسالة = " لي "+ العمر + "سنوات" # خطأ: لا يمكنك الجمع بين شارع مع الباحث في شارع
لإصلاح الخطأ ، تحتاج إلى التأكد من أن المتغير يحتوي على نوع البيانات الصحيح (الرقم) وتحويله إذا لزم الأمر.
استخدام أنواع البيانات الصحيحة واستخدام المشغلين والأساليب بشكل صحيح لدمج السلاسل والأرقام سيساعد على منع الخطأ"تيبيرور: لا يمكنك الجمع بين ستر مع إنت في ستر".
كيفية إصلاح خطأ تيبيرور: لا يمكنك الجمع بين ستر مع إنت في ستر
اكتبخطأ خطأ: لا يمكنك الجمع بين ستر مع إنت في ستر يحدث عند محاولة الجمع بين سلسلة (ستر) مع عدد (إنت) في سلسلة.
هذا خطأ شائع عند العمل مع أنواع البيانات في لغة برمجة بايثون.
يمكن استخدام عدة طرق لتصحيح هذا الخطأ:
- تحويل رقم إلى سلسلة: إذا كنت بحاجة إلى الجمع بين عدد مع سلاسل أخرى ، يمكنك تحويل الرقم إلى سلسلة باستخدام وظيفة ستر (). على سبيل المثال:
- استخدام تنسيق السلسلة: هناك عدة طرق لتنسيق السلاسل في بايثون. واحد منهم يستخدم طريقة التنسيق () أو رمز٪. يتيح لك ذلك دمج السلاسل مع الأرقام ، وتحويل الأرقام تلقائيا إلى سلاسل. على سبيل المثال:
- استخدام ملحق و سلسلة: بدءا من بيثون 3.6 ، تمت إضافة ملحق تنسيق سلسلة جديد باستخدام البادئة و. تتيح لك هذه الميزة تضمين قيم المتغيرات مباشرة في السلاسل. هذا مناسب ويسمح لك بتجنب الأخطاء عند الجمع بين أنواع مختلفة من البيانات. على سبيل المثال:
| الرمز الأصلي: | رمز ثابت: |
العدد = 5الرسالة = "الرقم" + الرقم | العدد = 5الرسالة = "الرقم هو" + شارع (رقم) |
| الرمز الأصلي: | رمز ثابت: |
العدد = 5الرسالة = "الرقم" + الرقم | العدد = 5الرسالة = " الرقم {}".تنسيق (رقم) |
العدد = 5الرسالة = "الرقم هو ٪ د" رقم ٪ | العدد = 5الرسالة = " الرقم {}".تنسيق (رقم) |
| الرمز الأصلي: | رمز ثابت: |
العدد = 5الرسالة = "الرقم" + الرقم | العدد = 5الرسالة = و " الرقم {رقم}" |
كل هذه النهج تسمح لك لتجنب خطأ تيبيرور: لا يمكنك الجمع بين ستر مع إنت في ستر والجمع بين السلاسل والأرقام بشكل صحيح في بيثون.
نصائح لمنع خطأ تيبيرور: لا تجمع ستر مع إنت في ستر
اكتبخطأ خطأ: لا يمكنك الجمع بين شارع مع كثافة العمليات. يحدث شارع عند محاولة الجمع بين (تكوين) سلسلة مع قيمة نوع بيانات رقمية. لمنع هذا الخطأ ، اتبع هذه النصائح:
التعامل مع الاستثناء: إذا لم يكن من الممكن تجنب الجمع بين سلاسل وأرقام أنواع البيانات المختلفة ، يمكنك استخدام محاولة/باستثناء بناء للتعامل مع خطأ تيبيرور. بهذه الطريقة يمكنك منع البرنامج من التعطل. على سبيل المثال:
- طباعة (نتيجة)
- فيما يلي بعض أمثلة التعليمات البرمجية التي يمكن أن تسبب مثل هذا الخطأ:
في هذه الحالة ، سيحدث خطأ ، لأنه من المستحيل إضافة سلسلة ورقم دون تحويل الرقم أولا إلى سلسلة.
المثال 2:
في المثال التالي ، نحاول ربط سلسلة ورقم باستخدام الطريقة
الاسم = "أليس"
الرسالة = " اسمي {} وأنا {} سنة.".الشكل (الاسم والعمر)
الشكل
لا يقوم تلقائيا بتحويل رقم إلى سلسلة.
المثال 3:
في هذا المثال ، نحاول استخدام متغير رقمي داخل سلسلة باستخدام سلسلة و: