تحويل Bytearray إلى بايت في Python

Convert Bytearray Bytes Python



يتم دعم العديد من أنواع كائنات البيانات المختلفة بواسطة Python. اثنان منهم من الأشياء bytearray و بايت . ال bytearray () تقوم الدالة بإرجاع كائن مصفوفة من البايت. هذا الكائن قابل للتغيير ويدعم العدد الصحيح من 0 إلى 255 بايت () تقوم الدالة بإرجاع كائنات بايت ، وهي غير قابلة للتغيير ، وتدعم الأعداد الصحيحة من 0 إلى 255. ستصف هذه المقالة هذه الوظائف وتشرح كيف bytearray يمكن تحويل الكائنات إلى بايت شاء.

بناء جملة طريقة bytearray ()

bytearray ([مصدر البيانات[والتشفير[وأخطاء]]])

الحجج الثلاث لهذه الطريقة اختيارية. يتم استخدام الوسيطة الأولى لتهيئة قائمة البايت. إذا كانت الوسيطة الأولى هي السلسلة ، فسيتم استخدام الوسيطة الثانية للتشفير. أخيرًا ، يتم استخدام الوسيطة الثالثة لعرض الخطأ إذا فشل الترميز.







صيغة البايت () الطريقة

بايت ([مصدر البيانات[والتشفير[وأخطاء]]])

جميع حجج بايت () الوظيفة اختيارية ، مثل bytearray () طريقة. وظائف هذه الوسائط هي أيضًا نفس وظائف bytearray () الطريقة المذكورة أعلاه.



طريقة التحويل bytearray إلى بايت في Python موضح أدناه ، باستخدام بعض الأمثلة البسيطة لفهم هذه العملية بشكل أفضل.



مثال 1: تحويل بيانات القائمة من bytearray إلى بايت

عندما تحتوي الدالة bytearray () على وسيطة واحدة فقط ، فإن قيمة الوسيطة ستكون مسند قاموس أو متغير. يوضح المثال التالي كيف يمكن تحويل كائن القاموس إلى كائن bytearray وكيف يمكن تحويل كائن bytearray إلى كائن بايت. بعد ذلك ، يتم استخدام الحلقة for الأولى لعرض قيم جدول الترجمة لرموز ASCII ويتم استخدام الحلقة for الثانية لعرض رموز رموز ASCII المقابلة.





#! / usr / bin / env python3

# تحديد القائمة
listdata= [72و 69و 76و 76و 79]
# طباعة محتوى القائمة
مطبعة('نقيم القاموس هي:ن'وlistdata)

# تهيئة كائن bytearray بالقائمة
byteArrayObject= bytearray(listdata)
# طباعة قيمة الكائن bytearray
مطبعة('نناتج طريقة bytearray ():ن'وbyteArrayObject)

# تحويل كائن bytearray إلى كائن بايت
بايت= بايت(byteArrayObject)
# طباعة قيمة الكائن بايت
مطبعة('نطريقة إخراج بايت ():ن'وبايت)

مطبعة('نقيم ASCII للبايت)
# كرر كائن بايت باستخدام حلقة
لساعةفيبايت
مطبعة(ساعةو'ونهاية=')

مطبعة('نقيم سلسلة بايت ')
# كرر كائن بايت باستخدام حلقة
لساعةفيبايت
مطبعة(chr(ساعة)و'ونهاية=')

انتاج |

سيظهر الإخراج التالي بعد تشغيل البرنامج النصي. هنا ، 72 و 69 و 76 و 79 هي رمز ASCII لـ 'H' و 'E' و 'L' و 'O' على التوالي.



مثال 2: تحويل بيانات السلسلة من بايت إلى بايت

يوضح المثال التالي تحويل كائنات bytearray إلى كائنات بايت في بيانات السلسلة. يتم استخدام وسيطتين في طريقة bytearray () لهذا البرنامج النصي. تحتوي الوسيطة الأولى على قيمة السلسلة ، بينما تحتوي الوسيطة الثانية على سلسلة الترميز. هنا ، يتم استخدام ترميز 'utf-8' للتحويل إلى كائن bytearray. ال فك تشفير() الطريقة المستخدمة في البرنامج النصي لتحويل كائنات البايت إلى بيانات سلسلة. يتم استخدام نفس الترميز في وقت التحويل.

#! / usr / bin / env python3

# خذ قيمة سلسلة
نص= إدخال(أدخل أي نص:ن')

# تهيئة كائن bytearray بسلسلة وتشفير
byteArrObj= bytearray(نصو 'utf-8')
مطبعة('نناتج طريقة bytesarray ():ن'وbyteArrObj)

# تحويل bytearray إلى بايت
بايت= بايت(byteArrObj)
مطبعة('نطريقة إخراج بايت ():ن'وبايت)

# تحويل قيمة البايت إلى سلسلة باستخدام الترميز
مطبعة('نقيم سلسلة بايت ')
مطبعة(بايتفك تشفير('utf-8'))

انتاج |

سيظهر الإخراج التالي بعد تشغيل البرنامج النصي.

مثال 3: تحويل بيانات عدد صحيح من بايت إلى بايت

تُظهر الأمثلة السابقة تحويل بايت وبايت بناءً على بيانات القاموس والسلسلة. يوضح هذا المثال الثالث تحويل bytearray إلى بايت بناءً على بيانات الإدخال. هنا ، يتم تحويل قيمة الإدخال إلى قيمة عددية وتمريرها كوسيطة عبر الدالة bytearray () ، ثم يتم تحويل كائن bytearray إلى كائن بايت. يتم عرض القيم الخالية المستندة إلى عدد صحيح كإخراج لكائن bytearray و bytes. يتم حساب العدد الإجمالي للبايتات عبر طريقة len () في نهاية البرنامج النصي ، وسيكون مساويًا لقيمة العدد الصحيح التي تم تمريرها كوسيطة في طريقة bytearray ().

#! / usr / bin / env python3

محاولة:
# خذ أي قيمة رقمية
نص= int(إدخال('أدخل أي رقم:'))

# تهيئة كائن bytearray بالرقم
byteArrObj= bytearray(نص)
مطبعة('نناتج طريقة bytesarray ():ن'وbyteArrObj)

# تحويل كائن bytearray إلى كائن بايت
بايت= بايت(byteArrObj)
مطبعة('نطريقة إخراج بايت ():ن'وبايت)

# طباعة حجم كائن بايت
مطبعة('نطول كائن البايت: 'ولين(بايت))
إلا قيمة خطأ:
مطبعة('أدخل أي قيمة رقمية')

انتاج |

بعد تشغيل البرنامج النصي ، يتم أخذ 6 كمدخلات في الإخراج التالي. يتم عرض القيم الفارغة الست كناتج بايت و بايت. عندما يتم حساب القيم الخالية ، يتم عرضها 6.

مثال 4: إنشاء bytearray باستخدام append () والتحويل إلى بايت

يوضح المثال التالي كيف يمكن إنشاء كائنات bytearray عبر طريقة append () وتحويلها إلى بايت. يتم تعريف المتغير arrVal هنا ككائن bytearray. بعد ذلك ، يتم استدعاء طريقة append () ست مرات لإضافة ستة عناصر إلى المصفوفة. رموز ASCII للأحرف ، 'P' و 'y' و 't' و 'h' و 'o' و 'n' ، هي 80 و 121 و 116 و 104 و 111 و 1120 على التوالي. تضاف هذه في كائن bytearray. يتم تحويل كائن الصفيف هذا إلى كائن بايت لاحقًا.

#! / usr / bin / env python3

# إنشاء bytearray وإضافة عنصر باستخدام طريقة append ()
ارفال= bytearray()
ارفال.ألحق(80)
ارفال.ألحق(121)
ارفال.ألحق(116)
ارفال.ألحق(104)
ارفال.ألحق(111)
ارفال.ألحق(110)

# طباعة قيم bytearray ()
مطبعة('نناتج طريقة bytearray ():ن'وارفال)

# تحويل كائن bytearray إلى كائن بايت
بايت= بايت(ارفال)

# طباعة قيمة الكائن بايت
مطبعة('نطريقة إخراج بايت ():ن'وبايت)

انتاج |

سيظهر الإخراج التالي بعد تشغيل البرنامج النصي.

استنتاج

يتم عرض طرق مختلفة في هذه المقالة لتحويل bytearray إلى بايت بعد إنشاء كائنات bytearray. بعد قراءة هذا المقال ، أتمنى أن تفهم مفهوم bytearray و bytes ، وأن تعرف طريقة تحويل bytearray إلى bytes ، وأن تكون قادرًا على عرض إخراج البايت كسلسلة وأحرف.