Syntaxe metody bytearray ()
bytearray ([data_source [, kódování [, chyby]]]))Tři argumenty této metody jsou volitelné. První argument se používá k inicializaci seznamu bajtů. Pokud je prvním argumentem řetězec, použije se pro kódování druhý argument. Nakonec se třetí argument používá k zobrazení chyby, pokud kódování selže.
Syntaxe metody bytes ()
bajty ([data_source [, kódování [, chyby]]])Všechny argumenty bajty () funkce jsou volitelné, jako bytearray () metoda. Funkce těchto argumentů jsou také stejné jako funkce bytearray () výše zmíněná metoda.
Metoda převodu bytearray na bajtů v Pythonu je ukázáno níže, s použitím několika jednoduchých příkladů pro lepší pochopení tohoto procesu.
Příklad 1: Převést data seznamu z bytearray na bajty
Pokud funkce bytearray () obsahuje pouze jeden argument, bude hodnotou argumentu slovníkový údaj nebo proměnná. Následující příklad ukazuje, jak lze objekt slovníku převést na objekt bytearray a jak lze objekt bytearray převést na bytový objekt. Dále se první smyčka for používá k zobrazení hodnot překladové tabulky kódů ASCII a druhá smyčka for se používá k zobrazení znaků odpovídajících kódů ASCII.
#!/ usr / bin / env python3# Definujte seznam
listdata = [72, 69, 76, 76, 79]
# Vytiskněte obsah seznamu
print ("\ nHodnoty slovníku jsou: \ n", listdata)
# Inicializujte objekt bytearray se seznamem
byteArrayObject = bytearray (listdata)
# Tisk hodnoty objektu bytearray
print ("\ nVýstup metody bytearray (): \ n", byteArrayObject)
# Převést objekt bytearray na bytový objekt
byteObject = bajty (byteArrayObject)
# Tisk bajtů hodnoty objektu
print ("\ nVýstup metody bytes (): \ n", byteObject)
print ("\ nHodnoty ASCII bajtů")
# Iterujte bajtový objekt pomocí smyčky
pro val v byteObject:
print (val, ", end =")
print ("\ nŘetězcové hodnoty bajtů")
# Iterujte bajtový objekt pomocí smyčky
pro val v byteObject:
print (chr (val), ", end =")
Výstup
Po spuštění skriptu se zobrazí následující výstup. Zde je 72, 69, 76 a 79 ASCII kód 'H, "E," L "a' O '.
Příklad 2: Převést řetězcová data z bytearray na bajty
Následující příklad ukazuje převod objektů bytearray na bajtové objekty v řetězcových datech. V metodě bytearray () tohoto skriptu se používají dva argumenty. První argument obsahuje hodnotu řetězce, zatímco druhý argument obsahuje kódovací řetězec. Zde se kódování 'utf-8' používá k převodu na objekt bytearray. The dekódovat() metoda se ve skriptu používá k převodu bajtových objektů na data řetězce. V době převodu se používá stejné kódování.
#!/ usr / bin / env python3# Vezměte hodnotu řetězce
text = input ("Zadejte libovolný text: \ n")
# Inicializujte objekt bytearray pomocí řetězce a kódování
byteArrObj = bytearray (text, 'utf-8')
print ("\ nVýstup metody bytesarray (): \ n", byteArrObj)
# Převést bytearray na bajty
byteObj = bajty (byteArrObj)
print ("\ nVýstup metody bytes (): \ n", byteObj)
# Převést hodnotu bajtů na řetězec pomocí emcodingu
print ("\ nŘetězcové hodnoty bajtů")
print (byteObj.dekódovat ("utf-8"))
Výstup
Po spuštění skriptu se zobrazí následující výstup.
Příklad 3: Převést celočíselná data z bytearray na bajty
Předchozí příklady ukazují převod bytearray a bytů na základě slovníku a řetězcových dat. Tento třetí příklad ukazuje převod bytearray na bajty na základě vstupních dat. Zde je vstupní hodnota převedena na celočíselnou hodnotu a předána jako argument prostřednictvím funkce bytearray () a objekt bytearray je poté převeden na bytový objekt. Hodnoty null založené na celočíselném čísle se zobrazují jako výstup objektu bytearray a bytes. Celkový počet bajtů se počítá pomocí metody len () na konci skriptu a bude se rovnat celočíselné hodnotě předané jako argument do metody bytearray ().
#!/ usr / bin / env python3Snaž se:
# Vezměte libovolnou číselnou hodnotu
text = int (vstup ("Zadejte libovolné číslo:"))
# Inicializujte bytearray objekt s číslem
byteArrObj = bytearray (text)
print ("\ nVýstup metody bytesarray (): \ n", byteArrObj)
# Převést objekt bytearray na objekt bajtů
byteObj = bajty (byteArrObj)
print ("\ nVýstup metody bytes (): \ n", byteObj)
# Tiskne velikost bajtového objektu
print ("\ nDélka objektu bajtů:", len (byteObj))
kromě ValueError:
tisk ("Zadejte libovolnou číselnou hodnotu")
Výstup
Po spuštění skriptu je 6 považován za vstup v následujícím výstupu. Šest hodnot null se zobrazí jako výstup bytearray a bajtů. Když se počítají nulové hodnoty, zobrazí se 6.
Příklad 4: Vytvořit bytearray pomocí append () a převést na bajty
Následující příklad ukazuje, jak lze objekty bytearray vytvořit pomocí metody append () a převést na bajty. Proměnná arrVal je zde deklarována jako objekt bytearray. Dále je metoda append () volána šestkrát, aby se do pole přidalo šest prvků. Kódy ASCII znaků „P“, „y“, „t“, „h“, „o“ a „n“ jsou 80, 121, 116, 104, 111 a 1120. Ty jsou přidány do objektu bytearray. Tento objekt pole se později převede na bytový objekt.
#!/ usr / bin / env python3# Vytvořte bytearray a přidejte položku pomocí metody append ()
arrVal = bytearray ()
arrVal.připojit (80)
arrVal.připojit (121)
arrVal.připojit (116)
arrVal.připojit (104)
arrVal.připojit (111)
arrVal.připojit (110)
# Vytiskněte hodnoty bytearray ()
print ("\ nVýstup metody bytearray (): \ n", arrVal)
# Převést objekt bytearray na bajtový objekt
byteObject = bajty (arrVal)
# Tisk bajtů hodnoty objektu
print ("\ nVýstup metody bytes (): \ n", byteObject)
Výstup
Po spuštění skriptu se zobrazí následující výstup.
Závěr
V tomto článku jsou uvedeny různé metody převodu bytearray na bajty po vytvoření bytearray objektů. Po přečtení tohoto článku doufám, že rozumíte konceptu bytearray a bajtů, znáte způsob převodu bytearray na bajty a umíte zobrazit výstup bajtů jako řetězec a znaky.