Python

Konvertējiet Bytearray uz baitiem Python

Konvertējiet Bytearray uz baitiem Python
Python atbalsta daudz dažādu veidu datu objektus. Divi no tiem ir objekti bytearray un baiti. The bytearray () funkcija atgriež baitu masīva objektu. Šis objekts ir maināms un atbalsta veselu skaitli no 0 līdz 255. The baiti () funkcija atgriež baitu objektus, nav maināma un atbalsta veselos skaitļus no 0 līdz 255. Šajā rakstā tiks aprakstītas šīs funkcijas un paskaidrots, kā bytearray objektus var pārveidot baiti objektiem.

Bytearray () metodes sintakse

bytearray ([datu avots [, kodējums [, kļūdas]]]]

Trīs šīs metodes argumenti nav obligāti. Pirmais arguments tiek izmantots, lai inicializētu baitu sarakstu. Ja pirmais arguments ir virkne, tad otro kodu izmanto kodēšanai. Visbeidzot, trešais arguments tiek izmantots, lai parādītu kļūdu, ja kodēšana neizdodas.

Baitu sintakse () Metode

baiti ([datu avots [, kodējums [, kļūdas]]]]

Visi baiti () funkcija nav obligāta, piemēram, bytearray () metodi. Arī šo argumentu funkcijas ir vienādas ar bytearray () metode, kas minēta iepriekš.

Konvertēšanas metode bytearray uz baiti programmā Python ir parādīts zemāk, izmantojot dažus vienkāršus piemērus, lai labāk izprastu šo procesu.

1. piemērs: konvertējiet saraksta datus no bytearray uz baitiem

Kad bytearray () funkcija satur tikai vienu argumentu, argumenta vērtība būs vārdnīcas bāzes punkts vai mainīgais. Šis piemērs parāda, kā vārdnīcas objektu var pārveidot par bytearray objektu un kā pēc tam bytearray objektu var pārveidot par baitu objektu. Pēc tam pirmais ciklam tiek izmantots, lai parādītu ASCII kodu tulkošanas tabulas vērtības, un otrais cilpa tiek izmantots, lai parādītu atbilstošo ASCII kodu rakstzīmes.

#!/ usr / bin / env python3
 
# Definējiet sarakstu
saraksta dati = [72, 69, 76, 76, 79]
# Izdrukājiet saraksta saturu
drukāt ("\ nVārdnīcas vērtības ir: \ n", saraksta dati)
 
# Inicializējiet bytearray objektu ar sarakstu
byteArrayObject = bytearray (listdata)
# Drukāt bytearray objekta vērtību
print ("\ nBetearray () metodes izvade: \ n", byteArrayObject)
 
# Pārvērst bytearray objektu baitu objektā
byteObject = baiti (byteArrayObject)
# Drukāt baitu objekta vērtību
print ("\ nBaitu () metodes izvade: \ n", byteObject)
 
drukāt ("\ nBaitu ASCII vērtības")
# Atkārtojiet baitu objektu, izmantojot cilpu
val vērtībai byteObject:
drukāt (val, ", end =")
 
print ("\ nBaitu virkņu vērtības")
# Atkārtojiet baitu objektu, izmantojot cilpu
val vērtībai byteObject:
drukāt (chr (val), ", end =")

Rezultāts

Pēc skripta palaišanas parādīsies šāda izeja. Šeit 72, 69, 76 un 79 ir attiecīgi “H”, “E”, “L” un “O” ASCII kods.

2. piemērs: Stīgu datu konvertēšana no bytearray uz baitiem

Šis piemērs parāda virknes datos baitreiju objektu pārveidošanu par baitu objektiem. Šī skripta bytearray () metodē tiek izmantoti divi argumenti. Pirmajā argumentā ir virknes vērtība, bet otrajā - kodēšanas virkne. Šeit 'utf-8' kodējumu izmanto, lai pārvērstu par bytearray objektu. The atšifrēt () metodi skriptā izmanto, lai baitu objektus pārvērstu virknes datos. Pārveidošanas laikā tiek izmantots tas pats kodējums.

#!/ usr / bin / env python3
 
# Paņemiet virknes vērtību
text = ievade ("Ievadiet jebkuru tekstu: \ n")
 
# Inicializējiet bytearray objektu ar virkni un kodējumu
byteArrObj = bytearray (teksts, 'utf-8')
print ("\ nBaitesarray () metodes izvade: \ n", byteArrObj)
 
# Konvertēt bytearray uz baitus
byteObj = baiti (byteArrObj)
print ("\ nBaitu () metodes izvade: \ n", byteObj)
 
# Konvertējiet baitu vērtību virknē, izmantojot emkodēšanu
print ("\ nBaitu virknes vērtības")
drukāt (byteObj.atšifrēt ("utf-8"))

Rezultāts

Pēc skripta palaišanas parādīsies šāda izeja.

3. piemērs: konvertējiet veselu skaitļu datus no baitrejuma uz baitiem

Iepriekšējie piemēri parāda baitu un baitu pārveidošanu, pamatojoties uz vārdnīcas un virknes datiem. Šis trešais piemērs parāda baitu pārvēršanu baitos, pamatojoties uz ievades datiem. Šeit ievades vērtība tiek pārveidota par veselu skaitli un tiek nodota kā arguments, izmantojot bytearray () funkciju, un pēc tam bytearray objekts tiek pārveidots par baitu objektu. Nulles vērtības, kuru pamatā ir vesels skaitlis, tiek parādītas kā objekta bytearray un baitu izvade. Kopējais baitu skaits tiek skaitīts, izmantojot metodi len () skripta beigās, un tas būs vienāds ar vesela skaitļa vērtību, kas kā arguments nodota bytearray () metodē.

#!/ usr / bin / env python3
 
mēģiniet:
# Veikt jebkuru skaitļa vērtību
text = int (ievade ("Ievadiet jebkuru skaitli:"))
 
# Inicializējiet bytearray objektu ar numuru
byteArrObj = bytearray (teksts)
print ("\ nBaitesarray () metodes izvade: \ n", byteArrObj)
 
# Pārvērst bytearray objektu par baitu objektu
byteObj = baiti (byteArrObj)
print ("\ nBaitu () metodes izvade: \ n", byteObj)
 
# Izdrukājiet baitu objekta izmēru
print ("\ nBaitu objekta garums:", len (byteObj))
izņemot ValueError:
print ("Ievadiet jebkuru skaitlisko vērtību")

Rezultāts

Pēc skripta palaišanas 6 tiek ņemts par ievadi nākamajā izvadē. Sešas nulles vērtības tiek parādītas kā baitu un baitu izvade. Kad tiek skaitītas nulles vērtības, tas parādīs 6.

4. piemērs: izveidojiet bytearray, izmantojot append () un Convert to bytes

Šis piemērs parāda, kā bytearray objektus var izveidot, izmantojot metodi append () un pārveidot baitos. ArrVal mainīgais šeit tiek deklarēts kā bytearray objekts. Tālāk metode append () tiek izsaukta sešas reizes, lai masīvā pievienotu sešus elementus. Rakstzīmju “P,“ y ”,“ t ”,“ h ”,“ o ”un“ n ”ASCII kodi ir attiecīgi 80, 121., 116., 104., 111. un 1120. Tie tiek pievienoti bytearray objektā. Šis masīva objekts vēlāk tiek pārveidots par baitu objektu.

#!/ usr / bin / env python3
# Izveidojiet bytearray un pievienojiet vienumu, izmantojot metodi append ()
arrVal = bytearray ()
arrVal.pievienot (80)
arrVal.pievienot (121)
arrVal.pievienot (116)
arrVal.pievienot (104)
arrVal.pievienot (111)
arrVal.pievienot (110)
 
# Izdrukājiet bytearray () vērtības
print ("\ nBaitearray () metodes izvade: \ n", arrVal)
 
# Pārveidojiet bytearray objektu par baitu objektu
byteObject = baiti (arrVal)
 
# Drukāt baitu objekta vērtību
print ("\ nBaitu () metodes izvade: \ n", byteObject)

Rezultāts

Pēc skripta palaišanas parādīsies šāda izeja.

Secinājums

Šajā rakstā ir parādītas dažādas metodes, kā pēc bytearray objektu izveides pārveidot baitu par baitiem. Izlasot šo rakstu, es ceru, ka jūs saprotat baitrīka un baitu jēdzienu, zināt veidu, kā konvertēt baitu un baitus, un spējat parādīt baitu izvadi kā virknes un rakstzīmes.

Debian Uzskaitiet visus darbojošos pakalpojumus
Pakalpojums jebkurā operētājsistēmā ir definēts kā fona lietojumprogramma, kas turpina gaidīt klientu pieprasījumus. Kad tā ir saņēmusi šos pieprasīju...
Debian Server vs. Ubuntu serveru salīdzinājums
Izveidojot jaunu serveri, lietotājiem var būt lielas bažas par to, kuru OS izmantot. Runājot par izmantojamo operētājsistēmu, tiek ņemtas vērā daudzas...
Debian Atspējot ipv6 saskarnē
Palaižot Debian 10, pēc noklusējuma ir iespējoti IPv6 tīkla savienojumi. Bet lielākajā daļā gadījumu jums ir jāatspējo IPV6 noklusējuma iestatījums. T...