Convertir Bytearray en String en Python

Muhammad Maisam Abbas 10 octubre 2023
  1. Convierta bytearray en cadena con la función bytes() en Python
  2. Convierta bytearray en cadena con la función bytearray.decode() en Python
Convertir Bytearray en String en Python

Puede utilizar dos métodos principales para convertir un bytearray en un cadena en Python: bytes() y bytearray.decode(). En este tutorial, le mostraremos cómo puede usar estas funciones como métodos para esta conversión especial.

Convierta bytearray en cadena con la función bytes() en Python

Si tenemos un bytearray que contiene caracteres de cadena con la codificación utf-8 y queremos convertir esa matriz en una variable de cadena, podemos usar la función incorporada bytes() en Python.

La función bytes() devuelve un objeto de bytes inmutable que luego se puede almacenar dentro de una variable de cadena. El siguiente fragmento de código demuestra cómo podemos convertir un bytearray en una cadena con la función bytes().

b = bytearray("test", encoding="utf-8")
str1 = bytes(b)
print(str1)

Producción :

b'test'

Convertimos el objeto bytearray b en una variable de cadena str1 con la función bytes() en el código anterior. Primero, codificamos el texto test con una codificación utf-8 dentro de un objeto de bytearray. Luego convertimos el bytearray a cadena con la función bytes() y almacenamos el resultado dentro de la variable de cadena str1.

Al final, imprimimos los datos dentro de la variable str1. El resultado muestra que este proceso agrega un objeto b al comienzo de nuestros datos originales y luego encierra los datos entre comillas simples. Este problema se aborda en el método que se analiza a continuación.

Convierta bytearray en cadena con la función bytearray.decode() en Python

Como podemos ver, la función bytes() convierte un bytearray en una cadena pero agrega datos adicionales a la cadena original. Este problema puede resolverse mediante la manipulación de cadenas, pero es un proceso engorroso. La función bytearray.decode() lo hace automáticamente por nosotros. Este método decodifica los datos originalmente codificados dentro del bytearray.

El siguiente fragmento de código demuestra cómo podemos convertir un bytearray en cadena con la función bytearray.decode().

b = bytearray("test", encoding="utf-8")
str1 = b.decode()
print(str1)

Producción :

test

Convertimos el objeto bytearray b en una variable de cadena str1 con la función b.decode() en el código anterior. Primero, codificamos el texto test con una codificación utf-8 dentro de un objeto de bytearray. Luego convertimos el bytearray a cadena con la función b.decode() y almacenamos el resultado dentro de la variable de cadena str1. Al final, imprimimos los datos dentro de la variable str1. El resultado muestra que este proceso no agrega ningún dato adicional a nuestros datos codificados originalmente.

De las demostraciones anteriores, está claro que el método bytearray.decode() es muy superior al método byte() para convertir un objeto bytearray en una variable de cadena.

Muhammad Maisam Abbas avatar Muhammad Maisam Abbas avatar

Maisam is a highly skilled and motivated Data Scientist. He has over 4 years of experience with Python programming language. He loves solving complex problems and sharing his results on the internet.

LinkedIn

Artículo relacionado - Python String