logo

Hoe Int naar Bytes converteren in Python?

Een int-object kan worden gebruikt om dezelfde waarde in het formaat van de byte weer te geven. Het gehele getal vertegenwoordigt een byte en wordt opgeslagen als een array, waarbij het meest significante cijfer (MSB) aan het begin of aan het einde van de array wordt opgeslagen.

Methode 1: int.tobytes()



Met behulp van de methode kan een int-waarde worden omgezet in bytes int.to_bytes(). De methode wordt aangeroepen op een int-waarde en wordt niet ondersteund door Python 2 (vereist minimaal Python3) voor uitvoering.

recursie Java

Syntaxis: int.to_bytes(lengte, bytevolgorde)

Argumenten :



lengte – gewenste lengte van de array in bytes.

byteorder – volgorde van de array om de conversie van een int naar bytes uit te voeren. byteorder kan waarden als beide hebben klein waarbij het meest significante bit aan het einde en het minst aan het begin wordt opgeslagen, of groot , waarbij MSB aan het begin en LSB aan het einde wordt opgeslagen.

Uitzonderingen :



OverflowError wordt geretourneerd als de lengte van de gehele waarde niet groot genoeg is om in de lengte van de array te passen.

De volgende programma's illustreren het gebruik van deze methode in Python:

Python3




paaseieren in Android
# 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)>

>

>

Uitvoer

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)>

>

wat is exporteren in Linux

>

Uitvoer

b'
x00x00x00x00'>

Methode 2: Converteert geheel getal naar string en string naar bytes

Deze aanpak werkt en is compatibel in beide Python-versies, 2 en 3. Deze methode neemt niet de lengte van de array en de bytevolgorde als argumenten.

  • Een geheel getal weergegeven in decimaal formaat kan eerst worden geconverteerd naar string met behulp van de str() functie , die als argument de gehele waarde neemt die moet worden geconverteerd naar het corresponderende string-equivalent.
  • Dit string-equivalent wordt vervolgens geconverteerd naar een reeks bytes door de gewenste representatie voor elk teken te kiezen, dat wil zeggen de stringwaarde codeert. Dit wordt gedaan door de str.encode() methode.

Python3


YouTube-video's downloaden met vlc



# 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)>

>

>

Uitvoer

b'5'>