Int-objektia voidaan käyttää edustamaan samaa arvoa tavun muodossa. Kokonaisluku edustaa tavua, tallennetaan taulukkona, jonka merkittävin numero (MSB) on tallennettu joko taulukon alkuun tai loppuun.
Tapa 1: int.tobytes()
Int-arvo voidaan muuntaa tavuiksi menetelmällä int.to_bytes(). Menetelmää kutsutaan int-arvolla, Python 2 ei tue sitä (vaatii vähintään Python3:n) suorittamista varten.
zip-komento linuxissa
Syntaksi: int.to_bytes(pituus, tavujärjestys)
Argumentit :
pituus – taulukon haluttu pituus tavuina.
byteorder – taulukon järjestys int:n muuntamiseksi tavuiksi. byteorderilla voi olla arvoja joko vähän jossa merkittävin bitti on tallennettu loppuun ja vähiten alkuun, tai iso , jossa MSB on tallennettu alussa ja LSB lopussa.
Poikkeukset:
OverflowError palautetaan, jos kokonaisluvun arvon pituus ei ole tarpeeksi suuri mahtumaan taulukon pituuteen.
Seuraavat ohjelmat havainnollistavat tämän menetelmän käyttöä Pythonissa:
Python 3
# 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)> |
ms word pikakäyttötyökalupalkki
>
>Lähtö
b'x00x05'>
Python 3
# 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)> |
>
>Lähtö
b' x00x00x00x00'>
Tapa 2: Muunnetaan kokonaisluku merkkijonoksi ja merkkijono tavuiksi
java jaettu merkkijono erottimella
Tämä lähestymistapa toimii sekä Python-versioiden 2 että 3 kanssa. Tämä menetelmä ei ota taulukon ja tavujärjestyksen pituutta argumentteina.
- Desimaalimuodossa esitetty kokonaislukuarvo voidaan muuntaa ensin merkkijonoksi käyttämällä str()-funktiota, joka ottaa argumenttina kokonaislukuarvon, joka muunnetaan vastaavaksi merkkijonovastineeksi.
- Tämä merkkijonovastine muunnetaan sitten tavujonoksi valitsemalla kullekin merkille haluttu esitys, joka on merkkijonon arvon koodaaminen. Tämä tehdään str.encode()-menetelmällä.
Python 3
# 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)> |
"mitä eroa on leijonalla ja tiikerillä"
>
>Lähtö
b'5'>