كيفية دمج سلسلة نصية وعدد صحيح في لغة البرمجة Python

المقدمة

تدعم لغة Python اقتران السلاسل باستخدام عامل +. في معظم لغات البرمجة الأخرى، إذا قمنا بربط سلسلة مع عدد صحيح (أو أي نوع بيانات أساسي آخر)، تقوم اللغة بتحويلها إلى سلسلة ثم تقوم بالاقتران بها.

ومع ذلك، في Python، إذا حاولت أن تقوم بربط سلسلة مع عدد صحيح باستخدام عامل +، ستحصل على خطأ في وقت التشغيل.

مثال

لنلقي نظرة على مثال لربط سلسلة (str) وعدد صحيح (int) باستخدام عامل +.

string_concat_int.py
current_year_message = 'Year is '

current_year = 2018

print(current_year_message + current_year)

الناتج المطلوب هو السلسلة: العام هو 2018. ومع ذلك، عند تشغيل هذا الكود، نحصل على الخطأ التالي في وقت التشغيل:

Traceback (most recent call last):
  File "/Users/sammy/Documents/github/journaldev/Python-3/basic_examples/strings/string_concat_int.py", line 5, in <module>
    print(current_year_message + current_year)
TypeError: can only concatenate str (not "int") to str

إذا كيف يمكنك أن تقوم بربط str و int في Python؟ هناك طرق مختلفة أخرى لأداء هذه العملية.

المتطلبات الأساسية

لإكمال هذا البرنامج التعليمي، ستحتاج إلى:

تم اختبار هذا البرنامج التعليمي باستخدام Python 3.9.6.

باستخدام الوظيفة str()

يمكننا تمرير عدد صحيح إلى وظيفة str() وسيتم تحويله إلى سلسلة:

print(current_year_message + str(current_year))

يتم إرجاع العدد الصحيح current_year كسلسلة: السنة هي 2018.

باستخدام مشغل الإنتربوليشن %

يمكننا تمرير القيم إلى مواصفة التحويل باستخدام تنسيق السلسلة بنمط printf:

print("%s%s" % (current_year_message, current_year))

يتم تفسير العدد الصحيح current_year إلى سلسلة: السنة هي 2018.

استخدام وظيفة str.format()

يمكننا أيضًا استخدام وظيفة str.format() لاتحاد السلسلة والعدد الصحيح.

print("{}{}".format(current_year_message, current_year))

يتم تحويل العدد الصحيح current_year إلى سلسلة: السنة هي 2018.

استخدام f-strings

إذا كنت تستخدم Python 3.6 أو الإصدارات الأحدث، يمكنك أيضًا استخدام f-strings.

print(f'{current_year_message}{current_year}')

يتم تفاعل العدد الصحيح current_year إلى سلسلة: السنة هي 2018.

الاستنتاج

يمكنك مراجعة البرنامج النصي الكامل لـ Python والمزيد من أمثلة Python في مستودعنا على GitHub.

Source:
https://www.digitalocean.com/community/tutorials/python-concatenate-string-and-int