الدالة str.translate()‎ في بايثون

من موسوعة حسوب
< Python‏ | str
مراجعة 19:17، 9 مايو 2018 بواسطة Mohammed Taher (نقاش | مساهمات) (أنشأ الصفحة ب'<noinclude>{{DISPLAYTITLE:الدالة <code>str.translate()‎</code> في بايثون}}</noinclude> تعيد الدالة‎ الحروف في Python/str|السلس...')
(فرق) → مراجعة أقدم | المراجعة الحالية (فرق) | مراجعة أحدث ← (فرق)

تعيد الدالة‎ الحروف في السلسلة النصية بالاعتماد على جدول الترجمة translation table.

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

x.translate()

المعاملات

table

يجب أن يكون الجدول كائنًا يؤدي عملية الفهرسة indexing باستخدام التابع __getitem()‎__ وعادة ما يكون تسلسلًا أو قاموسًا.

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

يعيد التابع نسخة من السلسلة النصية بعد استبدال الحروف بالاعتماد على جدول الترجمة.

عند فهرسة كائن الجدول حسب رتب الترميز الموحد (أعداد صحيحة) يمكن للكائن أن يؤدي ما يلي:

  • إعادة رتبة ترميز موحد أو سلسلة نصية، وذلك لربط الحرف بحرف آخر أو أكثر.
  • إعادة القيمة None، وذلك لحذف الحرف من السلسلة المعادة.
  • إطلاق الاستثناء LookupError، وذلك لربط الحرف بنفسه.

يمكن استخدام التابع str.maketrans() لإنشاء جدول الترجمة وذلك بربط الحروف بعضها ببعض وبأشكال مختلفة.

أمثلة

يوضّح المثال التالي طريقة استخدام الدالتين str.maketrans()‎ و str.translate()‎

>>> string1 = "abc"
>>> string2 = "xyz"
>>> string3 = "klm"
>>> string = "abcxyzklm"
>>> trans = string.maketrans(string1)
trans = string.maketrans(string1, string2)
>>> print(trans)
{97: 120, 98: 121, 99: 122}
>>> string.translate(trans)
'xyzxyzklm'
>>> trans = string.maketrans(string1, string2, string3)
>>> string.translate(trans)
'xyzxyz'

انظر أيضًا

مصادر