Python

Konvertieren Sie Bytearray in Bytes in Python

Konvertieren Sie Bytearray in Bytes in Python
Viele verschiedene Arten von Datenobjekten werden von Python unterstützt. Zwei davon sind die Objekte bytearray und Bytes. Das bytearray() Funktion gibt ein Array-Objekt von Bytes zurück. Dieses Objekt ist veränderbar und unterstützt die ganze Zahl von 0 bis 255. Das Byte() Funktion gibt Byte-Objekte zurück, ist nicht veränderbar und unterstützt die ganzen Zahlen von 0 bis 255. Dieser Artikel beschreibt diese Funktionen und erklärt, wie bytearray Objekte können umgewandelt werden in Bytes Objekte.

Syntax der bytearray() Methode

bytearray ([ Datenquelle [, Kodierung [, Fehler]]])

Die drei Argumente dieser Methode sind optional. Das erste Argument wird verwendet, um die Liste der Bytes zu initialisieren. Wenn das erste Argument der String ist, wird das zweite Argument für die Codierung verwendet. Schließlich wird das dritte Argument verwendet, um den Fehler anzuzeigen, wenn die Codierung fehlschlägt.

Syntax der bytes() Methode

Bytes ([Datenquelle [, Kodierung [, Fehler]]])

Alle Argumente der Byte() Funktion sind optional, wie die bytearray() Methode. Die Funktionen dieser Argumente sind auch die gleichen wie die bytearray() Methode, oben erwähnt.

Die Methode zum Konvertieren bytearray zu Bytes in Python wird unten gezeigt, wobei einige einfache Beispiele zum besseren Verständnis dieses Prozesses verwendet werden.

Beispiel 1: Konvertieren von Listendaten von bytearray in bytes

Wenn die Funktion bytearray() nur ein Argument enthält, ist der Wert des Arguments ein Wörterbuchdatum oder eine Variable. Das folgende Beispiel zeigt, wie ein Dictionary-Objekt in ein Bytearray-Objekt umgewandelt werden kann und wie dann ein Bytearray-Objekt in ein Byte-Objekt umgewandelt werden kann. Als nächstes wird die erste for-Schleife verwendet, um die Werte der Übersetzungstabelle von ASCII-Codes anzuzeigen, und die zweite for-Schleife wird verwendet, um die Zeichen der entsprechenden ASCII-Codes anzuzeigen.

#!/usr/bin/env python3
 
# Definiere die Liste
Listendaten = [72, 69, 76, 76, 79]
# Drucken Sie den Inhalt der Liste
print("\nDie Wörterbuchwerte sind :\n", listdata)
 
# Bytearray-Objekt mit Liste initialisieren
byteArrayObject = bytearray(Listendaten)
# Bytearray-Objektwert drucken
print("\nDie Ausgabe der Methode bytearray() :\n", byteArrayObject)
 
# Konvertieren Sie das Bytearray-Objekt in das Byte-Objekt
byteObject = bytes(byteArrayObject)
# Byte-Objektwert drucken
print("\nDie Ausgabe der bytes() Methode :\n", byteObject)
 
print("\nDie ASCII-Werte von Bytes")
# Iteriere das Bytes-Objekt mit Schleife
für Wert in byteObject:
print(val,", end=")
 
print("\nDie Stringwerte von Bytes")
# Iteriere das Bytes-Objekt mit Schleife
für Wert in byteObject:
print(chr(val),", end=")

Ausgabe

Die folgende Ausgabe erscheint nach dem Ausführen des Skripts. Hier sind 72, 69, 76 und 79 der ASCII-Code von 'H,"E,"L' bzw. 'O''.

Beispiel 2: Konvertieren von String-Daten von bytearray in bytes

Das folgende Beispiel zeigt die Konvertierung von Bytearray-Objekten in Byte-Objekte in String-Daten. In der Methode bytearray() dieses Skripts werden zwei Argumente verwendet. Das erste Argument enthält den String-Wert, während das zweite Argument den Codierungs-String enthält. Hier wird die 'utf-8'-Codierung verwendet, um in ein Bytearray-Objekt zu konvertieren. Das dekodieren() -Methode wird im Skript verwendet, um die Byte-Objekte in Zeichenfolgendaten umzuwandeln. Die gleiche Codierung wird zum Zeitpunkt der Konvertierung verwendet.

#!/usr/bin/env python3
 
# Nehmen Sie einen String-Wert
text = input("Geben Sie einen beliebigen Text ein:\n")
 
# Bytearray-Objekt mit String und Codierung initialisieren
byteArrObj = bytearray(text, 'utf-8')
print("\nDie Ausgabe der Methode bytesarray() :\n", byteArrObj)
 
# Bytearray in Bytes umwandeln
byteObj = bytes(byteArrObj)
print("\nDie Ausgabe der bytes() Methode :\n", byteObj)
 
# Bytes-Wert mit emcoding in String umwandeln
print("\nDie Stringwerte von Bytes")
print(byteObj.decode("utf-8"))

Ausgabe

Die folgende Ausgabe erscheint nach dem Ausführen des Skripts.

Beispiel 3: Integer-Daten von bytearray in bytes konvertieren

Die vorherigen Beispiele zeigen die Konvertierung von bytearray und Bytes basierend auf Dictionary- und String-Daten. Dieses dritte Beispiel zeigt die Konvertierung von bytearray in Bytes basierend auf den Eingabedaten. Hier wird der Eingabewert in einen Integer-Wert umgewandelt und über die Funktion bytearray() als Argument übergeben, und das bytearray-Objekt wird dann in ein bytearray-Objekt umgewandelt. Die auf der Ganzzahl basierenden Nullwerte werden als Ausgabe des bytearray- und bytes-Objekts angezeigt. Die Gesamtzahl der Bytes wird über die Methode len() am Ende des Skripts gezählt und entspricht dem ganzzahligen Wert, der als Argument an die Methode bytearray() übergeben wird.

#!/usr/bin/env python3
 
Versuchen:
# Nimm einen beliebigen Zahlenwert
text = int(input("Geben Sie eine beliebige Zahl ein: "))
 
# Bytearray-Objekt mit Nummer initialisieren
byteArrObj = bytearray(Text)
print("\nDie Ausgabe der Methode bytesarray() :\n", byteArrObj)
 
# Bytearray-Objekt in Bytes-Objekt konvertieren
byteObj = bytes(byteArrObj)
print("\nDie Ausgabe der bytes() Methode :\n", byteObj)
 
# Geben Sie die Größe des Bytes-Objekts aus
print("\nDie Länge des bytes-Objekts: ",len(byteObj))
außer ValueError:
print("Geben Sie einen beliebigen numerischen Wert ein")

Ausgabe

Nach dem Ausführen des Skripts wird 6 als Eingabe in der folgenden Ausgabe verwendet. Die sechs Nullwerte werden als Ausgabe von bytearray und bytes angezeigt. Wenn die Nullwerte gezählt werden, wird 6 . angezeigt.

Beispiel 4: Bytearray erstellen mit append() und Convert to bytes

Das folgende Beispiel zeigt, wie Bytearray-Objekte über die Methode append() erzeugt und in Bytes umgewandelt werden können. Die Variable arrVal wird hier als bytearray-Objekt deklariert. Als nächstes wird die Methode append() sechsmal aufgerufen, um dem Array sechs Elemente hinzuzufügen. Die ASCII-Codes der Zeichen „P“, „y“, „t“, „h“, „o“ und „n“ sind 80, 121, 116, 104, 111 bzw. 1120120. Diese werden im bytearray-Objekt hinzugefügt. Dieses Array-Objekt wird später in das bytes-Objekt umgewandelt.

#!/usr/bin/env python3
# Erstellen Sie ein Bytearray und fügen Sie ein Element mit der Methode append() hinzu
arrVal = bytearray()
arrVal.anhängen(80)
arrVal.anhängen(121)
arrVal.anhängen(116)
arrVal.anhängen(104)
arrVal.anhängen(111)
arrVal.anhängen(110)
 
# Drucken Sie die bytearray()-Werte
print("\nDie Ausgabe der bytearray() Methode :\n", arrVal)
 
# Konvertieren Sie das bytearray-Objekt in ein bytes-Objekt
byteObject = bytes(arrVal)
 
# Byte-Objektwert drucken
print("\nDie Ausgabe der bytes() Methode :\n", byteObject)

Ausgabe

Die folgende Ausgabe erscheint nach dem Ausführen des Skripts.

Fazit

In diesem Artikel werden verschiedene Methoden zum Konvertieren von Bytearray in Bytes nach dem Erstellen von Bytearray-Objekten gezeigt. Nachdem Sie diesen Artikel gelesen haben, hoffe ich, dass Sie das Konzept von Bytearray und Bytes verstehen, wissen, wie man Bytearray in Bytes umwandelt und in der Lage ist, die Ausgabe von Bytes als String und Zeichen anzuzeigen.

AppyMouse On-Screen Trackpad und Mauszeiger für Windows Tablets
Tablet-Benutzer vermissen oft den Mauszeiger, insbesondere wenn sie die Laptops gewohnt sind. Die Touchscreen-Smartphones und -Tablets bieten viele Vo...
Mittlere Maustaste funktioniert nicht unter Windows 10
Das mittlere Maustaste hilft Ihnen beim Scrollen durch lange Webseiten und Bildschirme mit vielen Daten. Wenn das aufhört, werden Sie am Ende die Tast...
So ändern Sie die linke und rechte Maustaste auf einem Windows 10-PC
Es ist ganz normal, dass alle Computer-Maus-Geräte ergonomisch für Rechtshänder gestaltet sind. Es gibt aber auch Mausgeräte, die speziell für Linkshä...