Convertir bytearray en octets en python

Convertir bytearray en octets en python
De nombreux types d'objets de données différents sont pris en charge par Python. Deux d'entre eux sont les objets bytearray et octets. Le bytearray () La fonction renvoie un objet de tableau d'octets. Cet objet est modifiable et prend en charge le numéro entier de 0 à 255. Le octets () La fonction renvoie les objets octets, n'est pas modifiable et prend en charge les entiers de 0 à 255. Cet article décrira ces fonctions et expliquera comment bytearray Les objets peuvent être convertis en octets objets.

Syntaxe de la méthode bytearray ()

bytearray ([data_source [, codage [, erreurs]]])

Les trois arguments de cette méthode sont facultatifs. Le premier argument est utilisé pour initialiser la liste des octets. Si le premier argument est la chaîne, alors le deuxième argument est utilisé pour l'encodage. Enfin, le troisième argument est utilisé pour afficher l'erreur si le codage échoue.

Syntaxe des octets () méthode

bytes ([data_source [, codage [, erreurs]]])

Tous les arguments du octets () La fonction est facultative, comme le bytearray () méthode. Les fonctions de ces arguments sont également les mêmes que le bytearray () Méthode, mentionnée ci-dessus.

La méthode de conversion bytearray pour octets dans Python est illustré ci-dessous, en utilisant quelques exemples simples pour une meilleure compréhension de ce processus.

Exemple 1: Convertir les données de la liste des bytearray en octets

Lorsque la fonction bytearray () ne contient qu'un seul argument, la valeur de l'argument sera une donnée de dictionnaire ou une variable. L'exemple suivant montre comment un objet de dictionnaire peut être converti en un objet bytearray et comment un objet bytearray peut ensuite être converti en un objet d'octet. Ensuite, le premier pour Loop est utilisé pour afficher les valeurs de la table de traduction des codes ASCII et la seconde pour Loop est utilisée pour afficher les caractères des codes ASCII correspondants.

#!/ usr / bin / env python3
# Définir la liste
listData = [72, 69, 76, 76, 79]
# Imprimez le contenu de la liste
print ("\ nthe dictionary Les valeurs sont: \ n", listData)
# Initialiser l'objet bytearray avec la liste
bytearrayObject = bytearray (listData)
# Imprimer la valeur de l'objet ByteArray
Print ("\ nthe Sortie de ByteArray () Méthode: \ n", bytearrayObject)
# Convertir l'objet ByteArray en objet Bytes
byteObject = octets (bytearrayobject)
# Imprimer la valeur de l'objet des octets
imprimer ("\ nthe Sortie de Bytes () Méthode: \ n", byteObject)
print ("\ nthe ASCII Valeurs des octets")
# Itérer l'objet octets à l'aide de boucle
Pour Val dans ByteObject:
print (val, ", end =")
print ("\ nThe String Values ​​of octets")
# Itérer l'objet octets à l'aide de boucle
Pour Val dans ByteObject:
print (chr (val), ", end =")

Sortir

La sortie suivante apparaîtra après l'exécution du script. Ici, 72, 69, 76 et 79 sont le code ASCII de 'H, "E," L, »et« O ».

Exemple 2: convertir les données de chaîne de bytearray en octets

L'exemple suivant montre la conversion des objets bytearray aux objets d'octet dans les données de chaîne. Deux arguments sont utilisés dans la méthode bytearray () de ce script. Le premier argument contient la valeur de chaîne, tandis que le deuxième argument contient la chaîne de codage. Ici, le codage «UTF-8» est utilisé pour se convertir en un objet bytearray. Le décoder() La méthode est utilisée dans le script pour convertir les objets d'octets en données de chaîne. Le même codage est utilisé au moment de la conversion.

#!/ usr / bin / env python3
# Prendre une valeur de chaîne
text = input ("Entrez n'importe quel texte: \ n")
# Initialiser l'objet ByteArray avec chaîne et codage
bytearrobj = bytearray (texte, 'utf-8')
Print ("\ nthe Sortie de BytesArray () Méthode: \ n", bytearrobj)
# Convertir bytearray en octets
byteoBj = octets (bytearrobj)
imprimer ("\ nthe Sortie des octets () Méthode: \ n", byteoBj)
# Convertir la valeur des octets en chaîne en utilisant l'émcodage
print ("\ nThe String Values ​​of octets")
Imprimer (byteoBj.Decode ("UTF-8"))

Sortir

La sortie suivante apparaîtra après l'exécution du script.

Exemple 3: Convertir les données entières de Bytearray en octets

Les exemples précédents montrent la conversion de bytearray et d'octets basé sur les données du dictionnaire et des chaînes. Ce troisième exemple montre la conversion de bytearray en octets basés sur les données d'entrée. Ici, la valeur d'entrée est convertie en une valeur entière et transmise comme argument via la fonction bytearray (), et l'objet bytearray est ensuite converti en un objet octets. Les valeurs nulles basées sur le nombre entier sont représentées comme une sortie de l'objet Bytearray et octets. Le nombre total d'octets est compté via la méthode Len () à la fin du script, et sera égal à la valeur entière transmise comme un argument dans la méthode bytearray ().

#!/ usr / bin / env python3
essayer:
# Prendre n'importe quelle valeur de nombre
text = int (input ("Entrez n'importe quel nombre:"))
# Initialiser l'objet ByteArray avec numéro
bytearrobj = bytearray (texte)
Print ("\ nthe Sortie de BytesArray () Méthode: \ n", bytearrobj)
# Convertir l'objet ByteArray en objet Bytes
byteoBj = octets (bytearrobj)
imprimer ("\ nthe Sortie des octets () Méthode: \ n", byteoBj)
# Imprimez la taille de l'objet octets
print ("\ nthe lenght de l'objet octets:", Len (byteoBj))
sauf ValueError:
print ("Entrez n'importe quelle valeur numérique")

Sortir

Après avoir exécuté le script, 6 est pris en entrée dans la sortie suivante. Les six valeurs nulles sont affichées sous forme de sortie de bytearray et d'octets. Lorsque les valeurs nulles sont comptées, il affiche 6.

Exemple 4: Créez du bytearray à l'aide de APPEND () et convertissez en octets

L'exemple suivant montre comment les objets bytearray peuvent être créés via la méthode APPEND () et converti en octets. La variable Arrval est déclarée ici comme un objet de bytearray. Ensuite, la méthode annexée () est appelée six fois pour ajouter six éléments dans le tableau. Les codes ASCII des caractères, «p,« y »,« t », h,« o », et« n »sont 80, 121, 116, 104, 111 et 1120, respectivement. Ceux-ci sont ajoutés dans l'objet bytearray. Cet objet de tableau est converti dans l'objet octets plus tard.

#!/ usr / bin / env python3
# Créer ByteArray et Ajouter un élément à l'aide de la méthode A SPEND ()
arrval = bytearray ()
arrval.Ajouter (80)
arrval.ajouter (121)
arrval.ajouter (116)
arrval.ajouter (104)
arrval.Ajouter (111)
arrval.ajouter (110)
# Imprimez les valeurs bytearray ()
imprimer ("\ nthe Sortie de ByteArray () Méthode: \ n", Arrval)
# Convertir l'objet bytearray en un objet octets
ByteObject = octets (Arrval)
# Imprimer la valeur de l'objet des octets
imprimer ("\ nthe Sortie de Bytes () Méthode: \ n", byteObject)

Sortir

La sortie suivante apparaîtra après l'exécution du script.

Conclusion

Diverses méthodes sont présentées dans cet article pour convertir Bytearray en octets après avoir créé des objets ByteArray. Après avoir lu cet article, j'espère que vous comprenez le concept de bytearray et d'octets, connaissez le moyen de convertir Bytearray en octets et de pouvoir afficher la sortie des octets en tant que chaîne et caractères.