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

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


تعيد الدالة تسلسل البيانات الثنائية بعد إجراء عمليات الربط والحذف بالاعتماد على جدول الترجمة.

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

x.translate()

المعاملات

table

جدول ترجمة يمكن إنشاؤه باستخدام الدالة bytes.maketrans()‎، ويجب أن يكون كائن بايتات بطول 256.

يمكن أن يأخذ هذا المعامل القيمة None وحينئذ سيتقصر عمل الدالة على حذف القيم المحددة في المعامل delete.

delete

معامل اختياري يحدد البيانات التي ستحذفها الدالة من التسلسل الأصلي.

ملاحظة:: في الإصدار 3.6 من بايثون أصبح هذا المعامل معاملًا مفتاحيًا.

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

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

أمثلة

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

>>> bytes1 = b'abc'
>>> bytes2 = b'xyz'
>>> byte = b'abcxyz'
>>> trans = bytes.maketrans(bytes1, bytes2)
>>> print(trans)
b'\x00\x01\x02\x03\x04\x05\x06\x07\x08\t\n\x0b\x0c\r\x0e\x0f\x10\x11\x12\x13\x14
\x15\x16\x17\x18\x19\x1a\x1b\x1c\x1d\x1e\x1f !"#$%&\'()*+,-./0123456789:;<=>?@AB
CDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`xyzdefghijklmnopqrstuvwxyz{|}~\x7f\x80\x81\x82\x8
3\x84\x85\x86\x87\x88\x89\x8a\x8b\x8c\x8d\x8e\x8f\x90\x91\x92\x93\x94\x95\x96\x9
7\x98\x99\x9a\x9b\x9c\x9d\x9e\x9f\xa0\xa1\xa2\xa3\xa4\xa5\xa6\xa7\xa8\xa9\xaa\xa
b\xac\xad\xae\xaf\xb0\xb1\xb2\xb3\xb4\xb5\xb6\xb7\xb8\xb9\xba\xbb\xbc\xbd\xbe\xb
f\xc0\xc1\xc2\xc3\xc4\xc5\xc6\xc7\xc8\xc9\xca\xcb\xcc\xcd\xce\xcf\xd0\xd1\xd2\xd
3\xd4\xd5\xd6\xd7\xd8\xd9\xda\xdb\xdc\xdd\xde\xdf\xe0\xe1\xe2\xe3\xe4\xe5\xe6\xe
7\xe8\xe9\xea\xeb\xec\xed\xee\xef\xf0\xf1\xf2\xf3\xf4\xf5\xf6\xf7\xf8\xf9\xfa\xf
b\xfc\xfd\xfe\xff'
>>> byte.translate(trans)
b'xyzxyz'
byte = b'read this short text'
byte.translate(None, b'aeiou')
b'rd ths shrt txt'

انظر أيضًا

مصادر