Pārvērst baitu par baitiem programmā Python

Convert Bytearray Bytes Python



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

Bytearray () metodes sintakse

bytearray ([datu avots[,kodēšana[,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 otrais arguments tiek izmantots kodēšanai. Visbeidzot, trešais arguments tiek izmantots, lai parādītu kļūdu, ja kodējums neizdodas.







Baitu () metodes sintakse

baiti ([datu avots[,kodēšana[,kļūdas]]])

Visi argumenti baiti () funkcija nav obligāta, piemēram, baits () metode. Šo argumentu funkcijas ir tādas pašas kā baits () metode, kas minēta iepriekš.



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



1. piemērs: Saraksta datu konvertēšana no baitu masīva uz baitiem

Ja funkcija bytearray () satur tikai vienu argumentu, argumenta vērtība būs vārdnīcas atskaites punkts vai mainīgais. Šis piemērs parāda, kā vārdnīcas objektu var pārvērst par baita masīva objektu un kā baita objektu pēc tam var pārvērst par baitu objektu. Tālāk pirmais cilpai tiek izmantots, lai parādītu ASCII kodu tulkošanas tabulas vērtības, un otrais cilpai 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 šādas: n',saraksta dati)

# Inicializējiet bytearray objektu ar sarakstu
byteArrayObject= bytearray(saraksta dati)
# Drukāt baitu objekta vērtību
drukāt(' nBytearray () metodes izvade: n',byteArrayObject)

# Pārvērst baitu objektu par baitu objektu
baitsObjekts= baiti(byteArrayObject)
# Drukāt baitu objekta vērtību
drukāt(' nBaitu () metodes izvade: n',baitsObjekts)

drukāt(' nBaitu ASCII vērtības)
# Atkārtojiet baitu objektu, izmantojot cilpu
priekšstiekšābaitsObjekts:
drukāt(st,'',beigas='')

drukāt(' nBaitu virkņu vērtības)
# Atkārtojiet baitu objektu, izmantojot cilpu
priekšstiekšābaitsObjekts:
drukāt(chr(st),'',beigas='')

Izeja

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



2. piemērs: pārveidojiet virkņu datus no baitu masīva par baitiem

Šis piemērs parāda baitu objektu pārvēršanu par baitu objektiem virknes datos. Šī skripta metodē bytearray () tiek izmantoti divi argumenti. Pirmais arguments satur virknes vērtību, bet otrais arguments satur kodēšanas virkni. Šeit “utf-8” kodējums tiek izmantots, lai pārvērstu par baitu objektu. The atšifrēt () metode tiek izmantota skriptā, lai baitu objektus pārvērstu par virknes datiem. Pārveidošanas laikā tiek izmantots tāds pats kodējums.

#!/usr/bin/env python3

# Ņemiet virknes vērtību
teksts= ievadi('Ievadiet jebkuru tekstu: n')

# Inicializējiet bytearray objektu ar virkni un kodējumu
baitsArrObj= bytearray(teksts, 'utf-8')
drukāt(' nBytesarray () metodes izvade: n',baitsArrObj)

# Pārvērst baitu par baitiem
baitsObj= baiti(baitsArrObj)
drukāt(' nBaitu () metodes izvade: n',baitsObj)

# Pārveidojiet baitu vērtību virknē, izmantojot kodēšanu
drukāt(' nBaitu virkņu vērtības)
drukāt(baitsObj.atšifrēt('utf-8'))

Izeja

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

3. piemērs: veselu skaitļu datu konvertēšana no baitu masīva uz baitiem

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

#!/usr/bin/env python3

pamēģini:
# Ņemiet jebkuru skaitļa vērtību
teksts= int(ievadi('Ievadiet jebkuru numuru:'))

# Inicializējiet bytearray objektu ar numuru
baitsArrObj= bytearray(teksts)
drukāt(' nBytesarray () metodes izvade: n',baitsArrObj)

# Pārvērst baitu objektu par baitu objektu
baitsObj= baiti(baitsArrObj)
drukāt(' nBaitu () metodes izvade: n',baitsObj)

# Izdrukājiet baitu objekta izmēru
drukāt(' nBaitu objekta garums: ',len(baitsObj))
izņemot ValueError:
drukāt('Ievadiet jebkuru skaitlisku vērtību')

Izeja

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

4. piemērs. Izveidojiet baitu, izmantojot aplikāciju (), un konvertējiet uz baitiem

Šis piemērs parāda, kā baitu objektus var izveidot, izmantojot metodi append (), un pārvērst par baitiem. Mainīgais arrVal šeit tiek deklarēts kā baitu masīva objekts. Tālāk sešas reizes tiek izsaukta metode append (), 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 objektam. Šis masīva objekts vēlāk tiks pārveidots par baitu objektu.

#!/usr/bin/env python3

# Izveidojiet baitu 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 baitu () vērtības
drukāt(' nBytearray () metodes izvade: n',arrVal)

# Pārveidojiet baitu masīva objektu par baitu objektu
baitsObjekts= baiti(arrVal)

# Drukāt baitu objekta vērtību
drukāt(' nBaitu () metodes izvade: n',baitsObjekts)

Izeja

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

Secinājums

Šajā rakstā ir parādītas dažādas metodes, kā baitu masīvu pārvērst baitos pēc bara masīva objektu izveidošanas. Pēc šī raksta lasīšanas es ceru, ka jūs saprotat baitu un baitu jēdzienu, zināt veidu, kā baitu masīvu pārvērst baitos, un varēsit parādīt baitu izvadi kā virkni un rakstzīmes.