التابع Template.substitute()‎ في بايثون

من موسوعة حسوب
< Python‏ | string‏ | Template

يؤدي هذا التابع عملية الاستبدال بالاعتماد على القالب ويعيد سلسلة نصية جديدة.

البنية العامة

substitute(mapping, **kwds)

المعاملات

mapping

أي كائن شبيه بالقاموس يتضمّن مفاتيح مطابقة للمعرّفات المستخدمة في القالب.

‎‎**kwds‎

يمكن بدلًا مما سبق تقديم معاملات مفتاحية، تكون فيها الكلمات المفتاحية مطابقة للمعرّفات المستخدمة في القالب.

عند استخدام المعامل mapping مع المعاملات المفتاحية، تأخذ الأخيرة الأولوية في حال وجود معرّفات متكرّرة بينهما.

في حال عدم وجود المعرّفات في المعامل mapping أو عند غياب المعاملات المفتاحية، تطلق اللغة الخطأ KeyError، وإضافة إلى ذلك يؤدي وجود المحرف $ في باقي أجزاء السلسلة إلى إطلاق الخطأ ValueError.

القيمة المعادة

يعيد التابع سلسلة نصية جديدة ناتجة عن إجراء الاستبدالات على السلسلة النصية الأصلية.

أمثلة

يبين المثال التالي النتائج المعادة من استخدام التابع:

>>> from string import Template
>>> s = Template('$who likes $what')
>>> s.substitute(who='tim', what='kung pao')
'tim likes kung pao'

انظر أيضًا

  • التابع Template.safe_substitute()‎ : هذا التابع مشابه للتابع Template.substitute()‎ ، باستثناء أنّه لا يطلق خطأً أو استثناءً عند حدوث مشكلة أثناء عملية الاستبدال.

مصادر