Python

Preveďte Bytearray na bajty v Pythone

Preveďte Bytearray na bajty v Pythone
Python podporuje mnoho rôznych typov dátových objektov. Dva z nich sú objekty bytearray a bajtov. The bytearray () funkcia vracia objekt poľa o bajtoch. Tento objekt je premenlivý a podporuje celé číslo od 0 do 255. The bajty () funkcia vracia bajtové objekty, nedá sa meniť a podporuje celé čísla od 0 do 255. Tento článok popisuje tieto funkcie a vysvetľuje, ako na to bytearray objekty môžu byť prevedené do bajtov predmety.

Syntax metódy bytearray ()

bytearray ([data_source [, kódovanie [, chyby]]])

Tri argumenty tejto metódy sú voliteľné. Prvý argument sa používa na inicializáciu zoznamu bajtov. Ak je prvým argumentom reťazec, potom sa na kódovanie použije druhý argument. Tretí argument sa nakoniec použije na zobrazenie chyby, ak kódovanie zlyhá.

Syntax metódy bytes ()

bajtov ([data_source [, kódovanie [, chyby]]])

Všetky argumenty bajty () funkcie sú voliteľné, napríklad bytearray () metóda. Funkcie týchto argumentov sú tiež rovnaké ako funkcie bytearray () metóda uvedená vyššie.

Metóda premeny bytearray do bajtov v jazyku Python je zobrazený nižšie a na uľahčenie pochopenia tohto procesu je uvedených niekoľko jednoduchých príkladov.

Príklad 1: Prevod údajov zoznamu z bytearray na bajty

Keď funkcia bytearray () obsahuje iba jeden argument, hodnotou argumentu bude slovník alebo premenná. Nasledujúci príklad ukazuje, ako možno objekt slovníka previesť na objekt bytearray a ako je možné objekt bytearray previesť na bytový objekt. Ďalej sa prvá slučka for používa na zobrazenie hodnôt prekladovej tabuľky kódov ASCII a druhá slučka for sa používa na zobrazenie znakov zodpovedajúcich kódov ASCII.

#!/ usr / bin / env python3
 
# Definujte zoznam
listdata = [72, 69, 76, 76, 79]
# Vytlačte obsah zoznamu
print ("\ nHodnoty slovníka sú: \ n", listdata)
 
# Inicializujte objekt bytearray so zoznamom
byteArrayObject = bytearray (listdata)
# Vytlačiť hodnotu objektu bytearray
print ("\ nVýstup metódy bytearray (): \ n", byteArrayObject)
 
# Premeniť bytearray objekt na bajtový objekt
byteObject = bajty (byteArrayObject)
# Vytlačiť bajtovú hodnotu objektu
print ("\ nVýstup metódou bytes (): \ n", byteObject)
 
print ("\ nHodnoty ASCII bajtov")
# Iterujte bytový objekt pomocou slučky
pre val v byteObject:
print (val, ", end =")
 
print ("\ nReťazcové hodnoty bajtov")
# Iterujte bytový objekt pomocou slučky
pre val v byteObject:
print (chr (val), ", end =")

Výkon

Po spustení skriptu sa zobrazí nasledujúci výstup. Tu je 72, 69, 76 a 79 kód ASCII znakov „H“, „E“, „L“ a „O“.

Príklad 2: Prevod reťazcových údajov z bytearray na bajty

Nasledujúci príklad ukazuje prevod objektov bytearray na bajtové objekty v údajoch reťazca. V metóde bytearray () tohto skriptu sa používajú dva argumenty. Prvý argument obsahuje hodnotu reťazca, zatiaľ čo druhý argument obsahuje kódovací reťazec. Tu sa kódovanie „utf-8“ používa na prevod na objekt bytearray. The dekódovať () v skripte sa používa metóda na prevod bajtových objektov na údaje reťazca. Rovnaké kódovanie sa používa v čase prevodu.

#!/ usr / bin / env python3
 
# Vezmite hodnotu reťazca
text = vstup ("Zadajte ľubovoľný text: \ n")
 
# Inicializujte objekt bytearray pomocou reťazca a kódovania
byteArrObj = bytearray (text, 'utf-8')
print ("\ nVýstup metódy bytesarray (): \ n", byteArrObj)
 
# Prevod bytearray na bajty
byteObj = bajty (byteArrObj)
print ("\ nVýstup metódou bytes (): \ n", byteObj)
 
# Prevod hodnoty bajtov na reťazec pomocou kódovania
print ("\ nReťazcové hodnoty bajtov")
print (byteObj.dekódovať ("utf-8"))

Výkon

Po spustení skriptu sa zobrazí nasledujúci výstup.

Príklad 3: Prevod celočíselných údajov z bytearray na bajty

Predchádzajúce príklady ukazujú prevod bytearray a bajtov na základe slovníkových a reťazcových údajov. Tento tretí príklad ukazuje prevod bytearray na bajty na základe vstupných údajov. Tu sa vstupná hodnota prevedie na celočíselnú hodnotu a predá sa ako argument prostredníctvom funkcie bytearray () a objekt bytearray sa potom prevedie na bytový objekt. Hodnoty null založené na celočíselnom čísle sa zobrazia ako výstup objektu bytearray a bytes. Celkový počet bajtov sa počíta pomocou metódy len () na konci skriptu a bude sa rovnať celočíselnej hodnote odovzdanej ako argument do metódy bytearray ().

#!/ usr / bin / env python3
 
skúste:
# Vezmite ľubovoľnú číselnú hodnotu
text = int (vstup ("Zadajte akékoľvek číslo:"))
 
# Inicializujte bytearray objekt s číslom
byteArrObj = bytearray (text)
print ("\ nVýstup metódy bytesarray (): \ n", byteArrObj)
 
# Premeniť bytearray objekt na bajtový objekt
byteObj = bajty (byteArrObj)
print ("\ nVýstup metódou bytes (): \ n", byteObj)
 
# Vytlačí veľkosť bajtového objektu
print ("\ nDĺžka objektu bajtov:", len (byteObj))
okrem ValueError:
tlačiť („Zadajte ľubovoľnú číselnú hodnotu“)

Výkon

Po spustení skriptu sa v nasledujúcom výstupe použije 6 ako vstup. Šesť nulových hodnôt sa zobrazuje ako výstup bytearray a bajtov. Keď sa spočítajú nulové hodnoty, zobrazí sa 6.

Príklad 4: Vytvorenie bytearray pomocou append () a prevodu na bajty

Nasledujúci príklad ukazuje, ako je možné vytvoriť objekty bytearray pomocou metódy append () a previesť ich na bajty. Premenná arrVal je tu deklarovaná ako bytearray objekt. Ďalej sa metóda append () volá šesťkrát, aby sa do poľa pridalo šesť prvkov. Kódy ASCII znakov „P“, „y“, „t“, „h“, „o“ a „n“ sú 80, 121, 116, 104, 111 a 1120, v uvedenom poradí. Tieto sa pridávajú do objektu bytearray. Tento objekt poľa sa neskôr prevedie na objekt bajtov.

#!/ usr / bin / env python3
# Vytvorte bytearray a pridajte položku pomocou metódy append ()
arrVal = bytearray ()
arrVal.pridať (80)
arrVal.pripojiť (121)
arrVal.pripojiť (116)
arrVal.pridať (104)
arrVal.pridať (111)
arrVal.pripojiť (110)
 
# Vytlačte hodnoty bytearray ()
print ("\ nVýstup metódy bytearray (): \ n", arrVal)
 
# Premeniť bytearray objekt na bajtový objekt
byteObject = bajty (arrVal)
 
# Tlačiť bajtovú hodnotu objektu
print ("\ nVýstup metódou bytes (): \ n", byteObject)

Výkon

Po spustení skriptu sa zobrazí nasledujúci výstup.

Záver

V tomto článku sú zobrazené rôzne spôsoby prevodu bytearray na bajty po vytvorení objektov bytearray. Po prečítaní tohto článku dúfam, že rozumiete konceptu bytearray a bajtov, poznáte spôsob prevodu bytearray na bajty a budete vedieť zobraziť výstup bajtov ako reťazec a znaky.

Hry Open source porty komerčných herných strojov
Open source porty komerčných herných strojov
Na hranie starých i niektorých z nedávnych herných titulov je možné využiť bezplatné hry s otvoreným zdrojom a multiplatformové herné enginy. V tomto ...
Hry Najlepšie hry z príkazového riadku pre systém Linux
Najlepšie hry z príkazového riadku pre systém Linux
Príkazový riadok nie je pri použití systému Linux iba vaším najväčším spojencom - môže byť tiež zdrojom zábavy, pretože ho môžete použiť na hranie mno...
Hry Najlepšie aplikácie na mapovanie gamepadu pre Linux
Najlepšie aplikácie na mapovanie gamepadu pre Linux
Ak radi hráte hry v systéme Linux s gamepadom namiesto typického systému vstupu pre klávesnicu a myš, máte tu niekoľko užitočných aplikácií. Mnoho hie...