Converti Bytearray in String in Python

Muhammad Maisam Abbas 30 gennaio 2023
  1. Converti bytearray in stringa con la funzione bytes() in Python
  2. Converti bytearray in stringa con la funzione bytearray.decode() in Python
Converti Bytearray in String in Python

Puoi usare due metodi principali per convertire un bytearray in una stringa in Python: bytes() e bytearray.decode(). In questo tutorial, ti mostreremo come puoi utilizzare queste funzioni come metodi per questa conversione speciale.

Converti bytearray in stringa con la funzione bytes() in Python

Se abbiamo un bytearray contenente caratteri stringa con la codifica utf-8 e vogliamo convertire quell’array in una variabile stringa, possiamo usare la funzione integrata bytes() in Python.

La funzione bytes() restituisce un oggetto bytes immutabile che può quindi essere memorizzato all’interno di una variabile stringa. Il seguente frammento di codice mostra come possiamo convertire un bytearray in una stringa con la funzione bytes().

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

Produzione:

b"test"

Abbiamo convertito l’oggetto bytearray b in una variabile stringa str1 con la funzione bytes() nel codice sopra. Innanzitutto, abbiamo codificato il testo test con una codifica utf-8 all’interno di un oggetto di bytearray. Abbiamo quindi convertito il bytearray in stringa con la funzione bytes() e memorizzato il risultato all’interno della variabile stringa str1.

Alla fine, abbiamo stampato i dati all’interno della variabile str1. L’output mostra che questo processo aggiunge un oggetto b all’inizio dei nostri dati originali e quindi racchiude i dati tra virgolette singole. Questo problema è affrontato nel metodo discusso di seguito.

Converti bytearray in stringa con la funzione bytearray.decode() in Python

Come possiamo vedere, la funzione bytes() converte un bytearray in una stringa ma aggiunge dati aggiuntivi alla stringa originale. Questo problema può essere risolto manipolando le stringhe, ma è un processo complicato. La funzione bytearray.decode() lo fa automaticamente per noi. Questo metodo decodifica i dati originariamente codificati all’interno del bytearray.

Il seguente frammento di codice mostra come possiamo convertire un bytearray in stringa con la funzione bytearray.decode().

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

Produzione:

test

Abbiamo convertito l’oggetto bytearray b in una variabile stringa str1 con la funzione b.decode() nel codice sopra. Innanzitutto, abbiamo codificato il testo test con una codifica utf-8 all’interno di un oggetto di bytearray. Abbiamo quindi convertito il bytearray in stringa con la funzione b.decode() e memorizzato il risultato all’interno della variabile stringa str1. Alla fine, abbiamo stampato i dati all’interno della variabile str1. L’output mostra che questo processo non aggiunge dati aggiuntivi ai nostri dati originariamente codificati.

Dalle dimostrazioni precedenti, è chiaro che il metodo bytearray.decode() è di gran lunga superiore al metodo byte() per convertire un oggetto bytearray in una variabile stringa.

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

Articolo correlato - Python String