Pytonorm

Konvertera Bytearray till Bytes i Python

Konvertera Bytearray till Bytes i Python
Många olika typer av dataobjekt stöds av Python. Två av dem är föremålen bytearray och byte. De bytearray () funktionen returnerar ett array-objekt med byte. Detta objekt kan ändras och stöder heltal från 0 till 255. De byte () funktionen returnerar byteobjekt, kan inte ändras och stöder heltal från 0 till 255. Denna artikel kommer att beskriva dessa funktioner och förklara hur bytearray objekt kan omvandlas till byte föremål.

Syntax för bytearray () Metod

bytearray ([datakälla [, kodning [, fel]]])

De tre argumenten för denna metod är valfria. Det första argumentet används för att initialisera listan med byte. Om det första argumentet är strängen används det andra argumentet för kodning. Slutligen används det tredje argumentet för att visa felet om kodningen misslyckas.

Syntax för byte () Metod

byte ([datakälla [, kodning [, fel]]])

Alla argument från byte () är valfria, som bytearray () metod. Funktionerna för dessa argument är också desamma som bytearray () ovan nämnda metoden.

Metoden för konvertering bytearray till byte i Python visas nedan, med några enkla exempel för bättre förståelse av denna process.

Exempel 1: Konvertera listdata från bytearray till byte

När funktionen bytearray () bara innehåller ett argument, kommer argumentets värde att vara ett ordboksdatum eller en variabel. Följande exempel visar hur ett ordbokobjekt kan omvandlas till ett bytearray-objekt och hur ett bytearray-objekt sedan kan omvandlas till ett byteobjekt. Därefter används den första för slingan för att visa värdena i översättningstabellen för ASCII-koder och den andra för slingan används för att visa tecknen i motsvarande ASCII-koder.

#!/ usr / bin / env python3
 
# Definiera listan
listdata = [72, 69, 76, 76, 79]
# Skriv ut innehållet i listan
skriv ut ("\ nLösenordsvärdena är: \ n", listdata)
 
# Initiera bytearray-objekt med lista
byteArrayObject = bytearray (listdata)
# Skriv ut bytearray-objektvärde
skriv ut ("\ nUtgången från bytearray () -metoden: \ n", byteArrayObject)
 
# Konvertera bytearray-objektet till byte-objekt
byteObject = bytes (byteArrayObject)
# Skriv ut byteobjektvärde
skriv ut ("\ nMetoden för byte ():: \ n", byteObject)
 
skriva ut ("\ n ASCII-värdena för byte")
# Iterera byteobjektet med hjälp av loop
för val in byteObject:
skriva ut (val, ", end =")
 
skriv ut ("\ nSträngvärdena för byte")
# Iterera byteobjektet med hjälp av loop
för val in byteObject:
skriva ut (chr (val), ", end =")

Produktion

Följande utdata visas efter körning av skriptet. Här är 72, 69, 76 och 79 ASCII-koden för 'H', 'E', 'L' och 'O'.

Exempel 2: Konvertera strängdata från bytearray till byte

Följande exempel visar omvandlingen av bytearray-objekt till byte-objekt i strängdata. Två argument används i bytearray () -metoden i detta skript. Det första argumentet innehåller strängvärdet, medan det andra argumentet innehåller kodningssträngen. Här används 'utf-8' -kodning för att konvertera till ett bytearray-objekt. De avkoda() metoden används i skriptet för att konvertera byteobjekten till strängdata. Samma kodning används vid tidpunkten för omvandlingen.

#!/ usr / bin / env python3
 
# Ta ett strängvärde
text = input ("Ange vilken text som helst: \ n")
 
# Initiera bytearray-objekt med sträng och kodning
byteArrObj = bytearray (text, 'utf-8')
skriv ut ("\ nUtgången från bytesarray () metod: \ n", byteArrObj)
 
# Konvertera bytearray till byte
byteObj = byte (byteArrObj)
skriv ut ("\ nMetoden för byte ():: \ n", byteObj)
 
# Konvertera bytevärde till sträng med kodning
skriv ut ("\ nSträngvärdena för byte")
tryck (byteObj.avkoda ("utf-8"))

Produktion

Följande utdata visas efter körning av skriptet.

Exempel 3: Konvertera heltalsdata från bytearray till byte

De tidigare exemplen visar konvertering av bytearray och byte baserat på ordlista och strängdata. Detta tredje exempel visar omvandlingen av bytearray till byte baserat på indata. Här omvandlas ingångsvärdet till ett heltal och skickas som ett argument via funktionen bytearray (), och bytearray-objektet konverteras sedan till ett byte-objekt. Nollvärdena baserat på heltalet visas som en utdata från bytearray och bytes-objektet. Det totala antalet byte räknas via len () -metoden i slutet av skriptet och kommer att vara lika med helvärdet som skickas som ett argument till bytearray () -metoden.

#!/ usr / bin / env python3
 
Prova:
# Ta valfritt talvärde
text = int (input ("Ange valfritt nummer:"))
 
# Initiera bytearray-objekt med nummer
byteArrObj = bytearray (text)
skriv ut ("\ nUtgången från bytesarray () -metod: \ n", byteArrObj)
 
# Konvertera bytearray-objekt till byte-objekt
byteObj = byte (byteArrObj)
skriv ut ("\ nMetoden för byte ():: \ n", byteObj)
 
# Skriv ut storleken på byteobjektet
print ("\ nLängden på byteobjektet:", len (byteObj))
utom ValueError:
skriv ut ("Ange ett numeriskt värde")

Produktion

Efter körning av skriptet tas 6 som inmatning i följande utdata. De sex nollvärdena visas som utdata från bytearray och bytes. När nollvärdena räknas visas den 6.

Exempel 4: Skapa bytearray med hjälp av append () och Convert to bytes

Följande exempel visar hur bytearray-objekt kan skapas via metoden append () och konverteras till byte. ArrVal-variabeln deklareras här som ett bytearray-objekt. Därefter kallas metoden append () sex gånger för att lägga till sex element i matrisen. ASCII-koderna för tecknen, 'P, "y," t, "h," o,' och 'n,' är 80, 121, 116, 104, 111 respektive 1120. Dessa läggs till i bytearray-objektet. Detta arrayobjekt omvandlas till byteobjektet senare.

#!/ usr / bin / env python3
# Skapa bytearray och lägg till objekt med metoden append ()
arrVal = bytearray ()
arrVal.bifoga (80)
arrVal.lägg till (121)
arrVal.lägg till (116)
arrVal.lägg till (104)
arrVal.lägg till (111)
arrVal.lägg till (110)
 
# Skriv ut värdena för bytearray ()
print ("\ nUtgången från bytearray () -metoden: \ n", arrVal)
 
# Konvertera bytearray-objektet till ett byte-objekt
byteObject = byte (arrVal)
 
# Skriv ut byteobjektvärde
skriv ut ("\ nMetoden för byte ():: \ n", byteObject)

Produktion

Följande utdata visas efter körning av skriptet.

Slutsats

Olika metoder visas i den här artikeln för att konvertera bytearray till byte efter att ha skapat bytearray-objekt. Efter att ha läst den här artikeln hoppas jag att du förstår begreppet bytearray och bytes, vet hur du konverterar bytearray till byte och kan visa output av byte som sträng och tecken.

Mus Så här ändrar du muspekare och markörstorlek, färg och schema på Windows 10
Så här ändrar du muspekare och markörstorlek, färg och schema på Windows 10
Muspekaren och markören i Windows 10 är mycket viktiga aspekter av operativsystemet. Detta kan också sägas för andra operativsystem, så i sanning är d...
Gratis och öppen källkodsmotorer för utveckling av Linux-spel
Den här artikeln kommer att täcka en lista över gratis motorer med öppen källkod som kan användas för att utveckla 2D- och 3D-spel på Linux. Det finns...
Shadow of the Tomb Raider for Linux Tutorial
Shadow of the Tomb Raider är det tolfte tillskottet till Tomb Raider-serien - en action-äventyrsspelfranchise skapad av Eidos Montreal. Spelet mottogs...