Convert Bytearray To Bytes In Python
Last Updated :
02 Feb, 2024
In Python, dealing with binary data is a common task, and understanding how to convert between different binary representations is crucial. One such conversion is from a bytearray to bytes. In this article, we will explore five simple methods to achieve this conversion, along with code examples for each.
Convert Bytearray To Bytes In Python
Below, are the ways to Convert Bytearray To Bytes In Python.
Convert Bytearray To Bytes Using bytes() Constructor
In this example, in the below code a bytearray named byte_array
containing ASCII values and prints its type, confirming it as a bytearray. Then, it converts the bytearray to a bytes object using the bytes()
constructor and prints both the resulting bytes and their type, demonstrating the conversion from bytearray to bytes in Python.
Python3
byte_array = bytearray([65, 66, 67, 68, 69])
print(type(byte_array))
bytes_result = bytes(byte_array)
print(bytes_result)
print(type(bytes_result))
Output<class 'bytearray'>
b'ABCDE'
<class 'bytes'>
Convert Bytearray To Bytes Using encode()
Method
In this example, below code creates a bytearray from the bytes representation of "Hello" and prints its type. It then decodes the bytearray to a UTF-8 string and re-encodes it, printing the result and its type. The output demonstrates the conversion between bytearray and string representations in Python.
Python3
byte_array_str = bytearray(b"Hello")
print(type(byte_array))
bytes_result = byte_array_str.decode('utf-8').encode('utf-8')
print(bytes_result)
print(type(bytes_result))
Output
<class 'bytearray'>
b'Hello'
<class 'bytes'>
Convert Bytearray To Bytes Using bytes()
Constructor Iteration
In this example, in below code a bytearray from a list of integers and prints its type. It then creates a bytes object from the elements of the bytearray, prints the result, and shows its type. This demonstrates the conversion between a bytearray and bytes object in Python.
Python3
byte_array = bytearray([75, 76, 77, 78, 79])
print(type(byte_array))
bytes_result = bytes([byte for byte in byte_array])
print(bytes_result)
print(type(bytes_result))
Output<class 'bytearray'>
b'KLMNO'
<class 'bytes'>
Convert Bytearray To Bytes Using struct
Module
In this example, the code first prints the type of the variable "byte_array" (which needs to be defined before the print statement). Then, it initializes a bytearray from a list of integers. Using the struct
module, it packs the bytearray into a binary format specified by the format string and prints the resulting bytes.
Python3
import struct
print(type(byte_array))
byte_array = bytearray([80, 81, 82, 83, 84])
format_string = f"{len(byte_array)}B"
bytes_result = struct.pack(format_string, *byte_array)
print(bytes_result)
print(type(bytes_result))
Output
<class 'bytearray'>
b'PQRST'
<class 'bytes'>
Conclusion
Converting a bytearray to bytes in Python can be achieved through various methods, depending on the specific requirements of your code. The examples provided in this article cover different scenarios, from simple one-liners to more versatile approaches using modules like struct
. Understanding these methods will empower you to handle binary data more effectively in your Python projects.
Similar Reads
Convert Bytes To Bits in Python Converting bytes to bits in Python involves representing each byte in its binary form, where each byte is composed of 8 bits. For example , a byte like 0xAB (which is 171 in decimal) would be represented as '10101011' in binary. Letâs explore a few techniques to convert bytes to bits in Python.Using
2 min read
Convert Unicode to Bytes in Python Unicode, often known as the Universal Character Set, is a standard for text encoding. The primary objective of Unicode is to create a universal character set that can represent text in any language or writing system. Text characters from various writing systems are given distinctive representations
2 min read
How to Convert Int to Bytes in Python? The task of converting an integer to bytes in Python involves representing a numerical value in its binary form for storage, transmission, or processing. For example, the integer 5 can be converted into bytes, resulting in a binary representation like b'\x00\x05' or b'\x05', depending on the chosen
2 min read
Convert Hex String to Bytes in Python Converting a hexadecimal string to bytes in Python involves interpreting each pair of hexadecimal characters as a byte. For example, the hex string 0xABCD would be represented as two bytes: 0xAB and 0xCD. Letâs explore a few techniques to convert a hex string to bytes.Using bytes.fromhex() bytes.fro
2 min read
How to Convert Bytes to Int in Python? Converting bytes to integers in Python involves interpreting a sequence of byte data as a numerical value. For example, if you have the byte sequence b'\x00\x01', it can be converted to the integer 1.Using int.from_bytes()int.from_bytes() method is used to convert a byte object into an integer. It a
3 min read
bytearray() function - Python The bytearray() function in Python creates a mutable sequence of bytes, which is essentially an array of integers in the range 0 to 255 (representing byte values). Unlike the immutable bytes type, bytearray allows us to modify its contents after creation, making it useful for tasks like binary data
5 min read