الفرق بين المراجعتين لصفحة: «Python/string/Template/substitute»

من موسوعة حسوب
< Python‏ | string‏ | Template
لا ملخص تعديل
لا ملخص تعديل
 
(مراجعتان متوسطتان بواسطة مستخدم واحد آخر غير معروضتين)
سطر 12: سطر 12:
=== <code>mapping</code> ===
=== <code>mapping</code> ===


أي كائن شبيه [[Python/dict|بالقاموس]] يتضمّن مفاتيح مطابقة للمعرّفات المستخدمة في القالب. ويمكن بدلًا من ذلك أيضًا تقديم معاملات مفتاحية، تكون فيها الكلمات المفتاحية مطابقة للمعرّفات المستخدمة في القالب.
أي كائن شبيه [[Python/dict|بالقاموس]] يتضمّن مفاتيح مطابقة للمعرّفات المستخدمة في القالب.


عند استخدام المعامل <code>mapping</code> مع المعاملات المفتاحية، تأخذ المعاملات المفتاحية الأولوية في حال وجود معرّفات متكرّرة بينهما.
‎‎<code>**kwds‎</code>
 
يمكن بدلًا مما سبق تقديم [[Python/arguments|معاملات مفتاحية]]، تكون فيها الكلمات المفتاحية مطابقة للمعرّفات المستخدمة في القالب.
 
عند استخدام المعامل <code>mapping</code> مع المعاملات المفتاحية، تأخذ الأخيرة الأولوية في حال وجود معرّفات متكرّرة بينهما.
 
في حال عدم وجود المعرّفات في المعامل <code>mapping</code> أو عند غياب المعاملات المفتاحية، تطلق اللغة الخطأ <code>[[Python/built-in exceptions#KeyError|KeyError]]</code>، وإضافة إلى ذلك يؤدي وجود المحرف <code>$</code> في باقي أجزاء السلسلة إلى إطلاق الخطأ <code>[[Python/built-in exceptions#ValueError|ValueError]]</code>.


== القيمة المعادة ==
== القيمة المعادة ==
يعيد التابع سلسلة نصية جديدة ناتجة عن إجراء الاستبدالات على السلسلة النصية الأصلية.
يعيد التابع [[Python/str|سلسلة نصية]] جديدة ناتجة عن إجراء الاستبدالات على السلسلة النصية الأصلية.


== أمثلة ==
== أمثلة ==
سطر 31: سطر 37:


== انظر أيضًا ==
== انظر أيضًا ==
* التابع <code>[[Python/string/Template/safe-substitute|Template.safe_substitute()‎]]</code> : هذا التابع مشابه للتابع <code>Template.substitute()‎</code> ، باستثناء أنّه لا يطلق خطأً أو <nowiki/>[[Python/exceptions|استثناءً]] عند حدوث مشكلة أثناء عملية الاستبدال.
* التابع <code>[[Python/string/Template/safe_substitute|Template.safe_substitute()‎]]</code> : هذا التابع مشابه للتابع <code>Template.substitute()‎</code> ، باستثناء أنّه لا يطلق خطأً أو <nowiki/>[[Python/exceptions|استثناءً]] عند حدوث مشكلة أثناء عملية الاستبدال.


== مصادر ==
== مصادر ==
سطر 38: سطر 44:
[[تصنيف:Python]]
[[تصنيف:Python]]
[[تصنيف:Python Method]]
[[تصنيف:Python Method]]
[[تصنيف:Python Template]]

المراجعة الحالية بتاريخ 07:09، 18 يونيو 2018

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

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

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()‎ ، باستثناء أنّه لا يطلق خطأً أو استثناءً عند حدوث مشكلة أثناء عملية الاستبدال.

مصادر