Ein int-Objekt kann verwendet werden, um denselben Wert im Byteformat darzustellen. Die Ganzzahl stellt ein Byte dar und wird als Array gespeichert, wobei die höchstwertige Ziffer (MSB) entweder am Anfang oder am Ende des Arrays gespeichert wird.
Methode 1: int.tobytes()
Mit der Methode kann ein int-Wert in Bytes umgewandelt werden int.to_bytes(). Die Methode wird für einen int-Wert aufgerufen und wird von Python 2 (erfordert mindestens Python3) für die Ausführung nicht unterstützt.
Tupel Java
Syntax: int.to_bytes(Länge, Bytereihenfolge)
Argumente :
Länge – gewünschte Länge des Arrays in Bytes.
Byteorder – Reihenfolge des Arrays, um die Konvertierung eines Ints in Bytes durchzuführen. Byteorder kann Werte wie folgt haben wenig wobei das höchstwertige Bit am Ende und das niedrigstwertige am Anfang gespeichert wird, oder groß , wobei MSB am Anfang und LSB am Ende gespeichert wird.
Ausnahmen:
OverflowError wird zurückgegeben, wenn die Länge des ganzzahligen Werts nicht groß genug ist, um in die Länge des Arrays aufgenommen zu werden.
Die folgenden Programme veranschaulichen die Verwendung dieser Methode in Python:
Python3
# declaring an integer value> integer_val>=> 5> > # converting int to bytes with length> # of the array as 2 and byter order as big> bytes_val>=> integer_val.to_bytes(>2>,>'big'>)> > # printing integer in byte representation> print>(bytes_val)> |
>
>Ausgabe
Verkettung Java-String
b'x00x05'>
Python3
# declaring an integer value> integer_val>=> 10> > # converting int to bytes with length> # of the array as 5 and byter order as> # little> bytes_val>=> integer_val.to_bytes(>5>,>'little'>)> > # printing integer in byte representation> print>(bytes_val)> |
>
Java ist null
>Ausgabe
b' x00x00x00x00'>
Methode 2: Konvertieren von Ganzzahlen in Zeichenfolgen und Zeichenfolgen in Bytes
Dieser Ansatz funktioniert und ist in beiden Python-Versionen 2 und 3 kompatibel. Diese Methode verwendet nicht die Länge des Arrays und die Bytereihenfolge als Argumente.
- Ein im Dezimalformat dargestellter ganzzahliger Wert kann zunächst mit der Funktion str() in einen String umgewandelt werden, die als Argument den ganzzahligen Wert verwendet, der in das entsprechende String-Äquivalent umgewandelt werden soll.
- Dieses String-Äquivalent wird dann in eine Folge von Bytes umgewandelt, indem für jedes Zeichen die gewünschte Darstellung ausgewählt wird, also der String-Wert codiert wird. Dies erfolgt durch die Methode str.encode().
Python3
Wie viele MB sind in einem GB?
# declaring an integer value> int_val>=> 5> > # converting to string> str_val>=> str>(int_val)> > # converting string to bytes> byte_val>=> str_val.encode()> print>(byte_val)> |
>
>Ausgabe
b'5'>