الدالة str.maketrans()
في بايثون
< Python | str
اذهب إلى التنقل
اذهب إلى البحث
مراجعة 07:47، 2 يونيو 2018 بواسطة عبد اللطيف ايمش (نقاش | مساهمات) (استبدال النص - 'تصنيف:Python تصنيف:Python Function تصنيف:Python Built-in Functions' ب'تصنيف:Python تصنيف:Python Method تصنيف:Python Types تصنيف:Python Str')
تعيد هذه الدالة الساكنة جدول ترجمة يمكن استخدامه بواسطة الدالة str.translate()
.
البنية العامة
x.maketrans()
المعاملات
في حال تمرير معامل واحد فإنّه يجب أن يكون قاموسًا يربط أرقام الحروف في الترميز الموحد (Unicode ordinals) وهي أعداد صحيحة أو الحروف (سلاسل نصية ذات حرف واحد) بأرقام الحروف في الترميز الموحد أو سلاسل نصية (ذات عدد غير محدد من الحروف) أو None
. بعد ذلك يجري تحويل مفاتيح الحروف إلى أرقام الحروف في الترميز الموحد.
في حال استخدام معاملين فيجب حينئذ أن يكونا سلسلتين نصيتين متساويتين في الطول، وفي القاموس الناتج سيجري ربط كلّ حرف في x
بالحرف الذي يمتلك الموضع نفسه في y
.
وفي حال استخدام المعامل الثالث، فيجب حينئذ أن يكون سلسلة نصية، وستربط حروفها بالقيمة None
في النتيجة المعادة.
أمثلة
يبين المثال التالي طريقة استخدام الدالة لإنشاء جدول الترجمة:
>>> 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'