logo

Hur konverterar man Int till byte i Python?

Ett int-objekt kan användas för att representera samma värde i bytens format. Heltalet representerar en byte, lagras som en array med dess mest signifikanta siffra (MSB) lagrad i antingen början eller slutet av arrayen.

Metod 1: int.tobytes()



Ett int-värde kan konverteras till byte med hjälp av metoden int.to_bytes(). Metoden anropas på ett int-värde, stöds inte av Python 2 (kräver minst Python3) för exekvering.

kommando chown

Syntax: int.to_bytes(längd, byteorder)

Argument :



längd – önskad längd på arrayen i byte .

byteorder – ordning på arrayen för att utföra konvertering av en int till byte. byteorder kan ha värden som antingen liten där den mest signifikanta biten lagras i slutet och minst i början, eller stor , där MSB lagras vid start och LSB i slutet.

Undantag:



OverflowError returneras om heltalsvärdets längd inte är tillräckligt stor för att rymmas i matrisens längd.

Följande program illustrerar användningen av denna metod i Python:

Python3


returnerar arrayer i java



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

>

>

Produktion

b'x00x05'>

Python3




vad är min datorskärmstorlek

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

>

>

Produktion

b'
x00x00x00x00'>

Metod 2: Konvertera heltal till sträng och sträng till byte

Detta tillvägagångssätt fungerar är kompatibelt i både Python-versionerna 2 och 3. Denna metod tar inte längden på arrayen och byteordningen som argument.

  • Ett heltalsvärde representerat i decimalformat kan konverteras till sträng först med funktionen str() , som tar som argument det heltalsvärde som ska konverteras till motsvarande strängekvivalent.
  • Denna strängekvivalent konverteras sedan till en sekvens av byte genom att välja önskad representation för varje tecken, det vill säga kodning av strängvärdet. Detta görs med metoden str.encode().

Python3




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

>

ankita lokhande ålder
>

Produktion

b'5'>