الفرق بين المراجعتين لصفحة: «Python/str/maketrans»
أنشأ الصفحة ب'<noinclude>{{DISPLAYTITLE:الدالة <code>str.maketrans()</code> في بايثون}}</noinclude> تعيد هذه الدالة الساكنة جدول ترجمة...' |
|||
سطر 43: | سطر 43: | ||
[[تصنيف:Python]] | [[تصنيف:Python]] | ||
[[تصنيف:Python | [[تصنيف:Python Method]] | ||
[[تصنيف:Python | [[تصنيف:Python Types]] | ||
[[تصنيف:Python Str]] |
مراجعة 07:47، 2 يونيو 2018
تعيد هذه الدالة الساكنة جدول ترجمة يمكن استخدامه بواسطة الدالة 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'