Python

Konverter Bytearray til Bytes i Python

Konverter Bytearray til Bytes i Python
Mange forskjellige typer dataobjekter støttes av Python. To av dem er gjenstandene bytearray og byte. De bytearray () funksjon returnerer et array-objekt med byte. Dette objektet kan endres og støtter heltall fra 0 til 255. De byte () funksjon returnerer byteobjekter, kan ikke endres og støtter heltallene fra 0 til 255. Denne artikkelen vil beskrive disse funksjonene og forklare hvordan bytearray objekter kan konverteres til byte gjenstander.

Syntaks for bytearray () Metode

bytearray ([data_source [, koding [, feil]]])

De tre argumentene for denne metoden er valgfrie. Det første argumentet brukes til å initialisere listen over byte. Hvis det første argumentet er strengen, brukes det andre argumentet for koding. Til slutt brukes det tredje argumentet for å vise feilen hvis kodingen mislykkes.

Syntaks for byte () Metode

byte ([datakilde [, koding [, feil]]])

Alle argumenter fra byte () funksjonen er valgfri, som bytearray () metode. Funksjonene til disse argumentene er også de samme som bytearray () metode, nevnt ovenfor.

Metoden for konvertering bytearray til byte i Python er vist nedenfor, ved hjelp av noen enkle eksempler for bedre forståelse av denne prosessen.

Eksempel 1: Konverter listedata fra bytearray til byte

Når funksjonen bytearray () bare inneholder ett argument, vil verdien av argumentet være et ordboksdatum eller en variabel. Følgende eksempel viser hvordan et ordbokobjekt kan konverteres til et bytearray-objekt, og hvordan et bytearray-objekt deretter kan konverteres til et byteobjekt. Deretter brukes den første for loop for å vise verdiene til oversettelsestabellen for ASCII-koder, og den andre for loop brukes for å vise tegnene til de tilsvarende ASCII-kodene.

#!/ usr / bin / env python3
 
# Definer listen
listdata = [72, 69, 76, 76, 79]
# Skriv ut innholdet på listen
print ("\ nVerdisbokverdiene er: \ n", listdata)
 
# Initier bytearray-objektet med listen
byteArrayObject = bytearray (listdata)
# Skriv ut verdi på objektet
print ("\ nUtgangen til bytearray () -metoden: \ n", byteArrayObject)
 
# Konverter bytearray-objektet til byte-objekt
byteObject = byte (byteArrayObject)
# Skriv ut byteobjektverdi
skriv ut ("\ nProduksjonen av byte () -metode: \ n", byteObject)
 
skriv ut ("\ n ASCII-verdiene for byte")
# Iterer byteobjektet ved hjelp av loop
for val in byteObject:
skriv ut (val, ", end =")
 
skriv ut ("\ nStringverdiene til byte")
# Iterer byteobjektet ved hjelp av loop
for val in byteObject:
skriv ut (chr (val), ", end =")

Produksjon

Følgende utdata vises etter kjøring av skriptet. Her er 72, 69, 76 og 79 ASCII-koden til henholdsvis 'H, "E," L,' og 'O'.

Eksempel 2: Konverter strengdata fra bytearray til byte

Det følgende eksemplet viser konvertering av bytearray-objekter til byteobjekter i strengdata. To argumenter brukes i bytearray () -metoden i dette skriptet. Det første argumentet inneholder strengverdien, mens det andre argumentet inneholder kodingsstrengen. Her brukes 'utf-8' -koding til å konvertere til et objekt som er utstyrt med en tåke. De dekode() metoden brukes i skriptet for å konvertere byteobjektene til strengdata. Den samme kodingen brukes på konverteringstidspunktet.

#!/ usr / bin / env python3
 
# Ta en strengverdi
text = input ("Skriv inn hvilken som helst tekst: \ n")
 
# Initialiser bytearray-objektet med streng og koding
byteArrObj = bytearray (tekst, 'utf-8')
print ("\ nUtdata fra bytesarray () -metode: \ n", byteArrObj)
 
# Konverter bytearray til byte
byteObj = byte (byteArrObj)
skriv ut ("\ nMetoden for byte (): \ n", byteObj)
 
# Konverter byteverdi til streng ved hjelp av koding
skriv ut ("\ nStringverdiene til byte")
utskrift (byteObj.dekode ("utf-8"))

Produksjon

Følgende utdata vises etter kjøring av skriptet.

Eksempel 3: Konverter heltalldata fra bytearray til byte

De forrige eksemplene viser konvertering av bytearray og byte basert på ordbok- og strengdata. Dette tredje eksemplet viser konvertering av bytearray til byte basert på inndataene. Her konverteres inngangsverdien til et heltall og sendes som et argument via bytearray () -funksjonen, og bytearray-objektet blir deretter konvertert til et byte-objekt. Nullverdiene basert på heltallet vises som en utdata fra bytearray og byte-objektet. Totalt antall byte telles via len () -metoden på slutten av skriptet, og vil være lik heltallverdien som sendes som et argument til bytearray () -metoden.

#!/ usr / bin / env python3
 
prøve:
# Ta en hvilken som helst tallverdi
text = int (input ("Skriv inn et hvilket som helst tall:"))
 
# Initialiser bytearray-objektet med nummer
byteArrObj = bytearray (tekst)
print ("\ nUtdata fra bytesarray () -metode: \ n", byteArrObj)
 
# Konverter bytearray-objekt til byte-objekt
byteObj = byte (byteArrObj)
skriv ut ("\ nMetoden for byte (): \ n", byteObj)
 
# Skriv ut størrelsen på byteobjektet
print ("\ nLengden på byteobjektet:", len (byteObj))
unntatt ValueError:
skriv ut ("Angi hvilken som helst numerisk verdi")

Produksjon

Etter å ha kjørt skriptet, blir 6 tatt som input i følgende utdata. De seks nullverdiene vises som utdata fra bytearray og byte. Når nullverdiene telles, vises det 6.

Eksempel 4: Lag bytearray ved hjelp av append () og Convert to bytes

Følgende eksempel viser hvordan bytearray-objekter kan opprettes via append () -metoden og konverteres til byte. ArrVal-variabelen blir deklarert her som et bytearray-objekt. Deretter kalles append () -metoden seks ganger for å legge til seks elementer i matrisen. ASCII-kodene til tegnene, 'P, "y," t, "h," o,' og 'n,' er henholdsvis 80, 121, 116, 104, 111 og 1120. Disse blir lagt til i bytearray-objektet. Dette arrayobjektet blir senere konvertert til byteobjektet.

#!/ usr / bin / env python3
# Lag bytearray og legg til element ved hjelp av append () -metoden
arrVal = bytearray ()
arrVal.legge til (80)
arrVal.legge til (121)
arrVal.legge til (116)
arrVal.legge til (104)
arrVal.legge til (111)
arrVal.legge til (110)
 
# Skriv ut bytearray () -verdiene
print ("\ nUtgangen til bytearray () -metoden: \ n", arrVal)
 
# Konverter bytearray-objektet til et byte-objekt
byteObject = byte (arrVal)
 
# Skriv ut byteobjektverdi
skriv ut ("\ nProduksjonen av byte () -metode: \ n", byteObject)

Produksjon

Følgende utdata vises etter kjøring av skriptet.

Konklusjon

Forskjellige metoder er vist i denne artikkelen for å konvertere bytearray til byte etter å ha opprettet bytearray-objekter. Etter å ha lest denne artikkelen, håper jeg at du forstår begrepet bytearray og bytes, vet hvordan du konverterer bytearray til byte, og kan vise utdataene fra bytes som streng og tegn.

Mus AppyMouse Pekeplate og musepeker på skjermen for Windows-nettbrett
AppyMouse Pekeplate og musepeker på skjermen for Windows-nettbrett
Nettbrettbrukere savner ofte musepekeren, spesielt når de bruker vanlige bærbare datamaskiner. Berøringsskjermen Smarttelefoner og nettbrett har mange...
Mus Midterste museknapp fungerer ikke i Windows 10
Midterste museknapp fungerer ikke i Windows 10
De midtre museknapp hjelper deg med å bla gjennom lange websider og skjermer med mye data. Hvis det stopper, vil du ende opp med å bruke tastaturet ti...
Mus Hvordan endre venstre og høyre museknapp på Windows 10 PC
Hvordan endre venstre og høyre museknapp på Windows 10 PC
Det er ganske vanlig at alle datamusenheter er ergonomisk designet for høyrehendte brukere. Men det er tilgjengelige musenheter som er spesielt design...