Et int-objekt kan bruges til at repræsentere den samme værdi i bytens format. Heltallet repræsenterer en byte, er lagret som et array med dets mest signifikante ciffer (MSB) gemt i enten starten eller slutningen af arrayet.
Metode 1: int.tobytes()
En int-værdi kan konverteres til bytes ved at bruge metoden int.to_bytes(). Metoden påkaldes på en int-værdi, understøttes ikke af Python 2 (kræver minimum Python3) til udførelse.
uordensgennemgang af binært træ
Syntaks: int.to_bytes(længde, byteordre)
Argumenter :
længde – ønsket længde af arrayet i bytes .
byteorder – rækkefølgen af arrayet til at udføre konvertering af en int til bytes. byteorder kan have værdier som enten lille hvor den mest signifikante bit er gemt i slutningen og mindst i begyndelsen, eller stor , hvor MSB gemmes ved start og LSB til sidst.
Undtagelser:
OverflowError returneres i tilfælde af, at heltalsværdilængden ikke er stor nok til at kunne rummes i arrayets længde.
Følgende programmer illustrerer brugen af denne metode i Python:
Python3
java nummer til streng
# 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
transformer streng til int
# 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'>
Metode 2: Konvertering af heltal til streng og streng til bytes
Denne fremgangsmåde virker er kompatibel i både Python-versioner, 2 og 3. Denne metode tager ikke længden af arrayet og byteordren som argumenter.
- En heltalsværdi repræsenteret i decimalformat kan konverteres til streng først ved hjælp af funktionen str() , der tager som argument den heltalsværdi, der skal konverteres til den tilsvarende strengækvivalent.
- Denne strengækvivalent konverteres derefter til en sekvens af bytes ved at vælge den ønskede repræsentation for hvert tegn, det vil sige indkodning af strengværdien. Dette gøres ved hjælp af str.encode() metoden.
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)> |
palindrom nummer
>
>Produktion
b'5'>