Convertir Bytearray en String en Python

Muhammad Maisam Abbas 10 octobre 2023
  1. Convertir bytearray en string avec la fonction bytes() en Python
  2. Convertir bytearray en string avec la fonction bytearray.decode() en Python
Convertir Bytearray en String en Python

Vous pouvez utiliser deux méthodes principales pour convertir un bytearray en une string en Python : bytes() et bytearray.decode(). Dans ce didacticiel, nous allons vous montrer comment vous pouvez utiliser ces fonctions comme méthodes pour cette conversion spéciale.

Convertir bytearray en string avec la fonction bytes() en Python

Si nous avons un bytearray contenant des caractères de chaîne avec l’encodage utf-8 et que nous voulons convertir ce tableau en une variable string, nous pouvons utiliser la fonction intégrée bytes() dans Python.

La fonction bytes() renvoie un objet bytes immuable qui peut ensuite être stocké dans une variable string. L’extrait de code suivant montre comment nous pouvons convertir un bytearray en une string avec la fonction bytes().

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

Production:

b'test'

Nous avons converti l’objet bytearray b en une variable de chaîne str1 avec la fonction bytes() dans le code ci-dessus. Tout d’abord, nous avons encodé le texte test avec un encodage utf-8 à l’intérieur d’un objet de bytearray. Nous avons ensuite converti le bytearray en string avec la fonction bytes() et stocké le résultat dans la variable de chaîne str1.

Au final, nous avons imprimé les données à l’intérieur de la variable str1. La sortie montre que ce processus ajoute un objet b au début de nos données d’origine, puis enferme les données entre guillemets simples. Ce problème est traité dans la méthode décrite ci-après.

Convertir bytearray en string avec la fonction bytearray.decode() en Python

Comme nous pouvons le voir, la fonction bytes() convertit un bytearray en une string mais ajoute des données supplémentaires à la chaîne d’origine. Ce problème peut être résolu par la manipulation de chaînes, mais c’est un processus lourd. La fonction bytearray.decode() le fait automatiquement pour nous. Cette méthode décode les données encodées à l’origine à l’intérieur du bytearray.

L’extrait de code suivant montre comment nous pouvons convertir un bytearray en string avec la fonction bytearray.decode().

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

Production:

test

Nous avons converti l’objet bytearray b en une variable de chaîne str1 avec la fonction b.decode() dans le code ci-dessus. Tout d’abord, nous avons encodé le texte test avec un encodage utf-8 à l’intérieur d’un objet de bytearray. Nous avons ensuite converti le bytearray en string avec la fonction b.decode() et stocké le résultat dans la variable de chaîne str1. Au final, nous avons imprimé les données à l’intérieur de la variable str1. La sortie montre que ce processus n’ajoute aucune donnée supplémentaire à nos données codées à l’origine.

D’après les démonstrations ci-dessus, il est clair que la méthode bytearray.decode() est de loin supérieure à la méthode byte() pour convertir un objet bytearray en une variable 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

Article connexe - Python String