Converter Bytearray em String em Python

Muhammad Maisam Abbas 10 outubro 2023
  1. Converta bytearray para string com a função bytes() em Python
  2. Converta bytearray para string com a função bytearray.decode() em Python
Converter Bytearray em String em Python

Você pode usar dois métodos principais para converter um bytearray em uma string em Python: bytes() e bytearray.decode(). Neste tutorial, mostraremos como você pode usar essas funções como métodos para essa conversão especial.

Converta bytearray para string com a função bytes() em Python

Se tivermos um bytearray contendo caracteres string com a codificação utf-8 e quisermos converter esse array em uma variável string, podemos usar a função interna bytes() em Python.

A função bytes() retorna um objeto de bytes imutável que pode então ser armazenado dentro de uma variável string. O fragmento de código a seguir demonstra como podemos converter um bytearray em uma string com a função bytes().

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

Resultado:

b'test'

Convertemos o objeto bytearray b em uma variável de string str1 com a função bytes() no código acima. Primeiro, codificamos o texto test com uma codificação utf-8 dentro de um objeto de bytearray. Em seguida, convertemos o bytearray em string com a função bytes() e armazenamos o resultado dentro da variável de string str1.

No final, imprimimos os dados dentro da variável str1. A saída mostra que esse processo adiciona um objeto b no início de nossos dados originais e, em seguida, coloca os dados entre aspas simples. Este problema é tratado no método discutido a seguir.

Converta bytearray para string com a função bytearray.decode() em Python

Como podemos ver, a função bytes() converte um bytearray em uma string, mas adiciona dados adicionais à string original. Esse problema pode ser resolvido pela manipulação de strings, mas é um processo complicado. A função bytearray.decode() faz isso automaticamente para nós. Este método decodifica os dados originalmente codificados dentro do bytearray.

O fragmento de código a seguir demonstra como podemos converter um bytearray em string com a função bytearray.decode().

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

Resultado:

test

Convertemos o objeto bytearray b em uma variável de string str1 com a função b.decode() no código acima. Primeiro, codificamos o texto test com uma codificação utf-8 dentro de um objeto de bytearray. Em seguida, convertemos o bytearray em string com a função b.decode() e armazenamos o resultado dentro da variável de string str1. No final, imprimimos os dados dentro da variável str1. A saída mostra que esse processo não adiciona nenhum dado adicional aos nossos dados codificados originalmente.

A partir das demonstrações acima, é claro que o método bytearray.decode() é muito superior ao método byte() para converter um objeto bytearray em uma variável string.

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

Artigo relacionado - Python String