Byte til streng i python

Byte til streng i python

I Python, når vi lagrer noe, vil det lagre det som en byte. Byte er ikke menneskelig lesbare, og strengene er menneskelig lesbare former. Hver gang vi lagrer noen streng, vil den ikke direkte lagre den som en streng; Det vil bli kodet inn i byte ved å bruke forskjellige metoder som ASCII og UTF-8.

For eksempel, 'Jeg er en linuxhint'.kode ('ascii')

I eksemplet ovenfor konverterer vi strengen til byte ved hjelp av kodemetoden ASCII. Og når vi skriver den ut ved hjelp av Python Print -metoden, vil vi se resultater som B'i AM A Linuxhint '. Her kan vi se at strengen bare følger ett tegn, b. I virkeligheten er vi ikke i stand til å lese byte, men her avkoder Python Print-funksjonen byte til menneskelig lesbare former slik at vi kan lese strengene.

Men i virkeligheten, når vi kjører denne strengen for å se hver karakter av byte -strengene, vil den skrive ut slik:

str1 = 'Jeg er en linuxhint'
Print (Type (STR1))
str2 = b'i er en linuxhint '
Print (Type (STR2))

Vi opprettet to strenger. En streng er grei. Og den andre strengen er byte. Når vi skriver ut begge strengtyper, får vi resultater som vist nedenfor. Resultatene nedenfor viser at en streng er en byte -type og en annen er en strengtype.


Nå vil vi skrive ut hvert tegn på begge strengene for å finne forskjellen mellom dem. Først vil vi skrive ut en streng (STR1) ved hjelp av en for loop, som er en normal streng.

for en i str1:
trykk (a)

Produksjon:

Jeg
en
m
en
l
Jeg
n
u
x
h
Jeg
n
t

Nå skal vi skrive ut en annen streng (STR2) som er en byte -type.

for en i str2:
trykk (a)

Produksjon:

73
32
97
109
32
97
32
108
105
110
117
120
104
105
110
116

Fra resultatene ovenfor kan vi se forskjellene mellom byte -typen og strengtypen. Byte type er ikke menneskelig lesbare former.

Så nå skal vi se forskjellige metoder som kan konvertere byte til strenger.

Metode 1: Bruke kart () -funksjonen

I denne metoden vil vi bruke kart () -funksjonen for å konvertere byte til et strengformat. Det lille programmet nedenfor vil fjerne konseptet.

byte = [97, 99, 100]
s = ".Bli med (Kart (Chr, byte))
trykk (er)

Produksjon:

ACD

Linje 1: Vi opprettet en liste over navn byte.

Linje 3: Vi passerte deretter karakterene til elementet på listen som en parameter og en byte som en parameter til Join () -funksjonen, som vil bli med i alle tegnene etter konvertering. Endelig skrives resultatet.

Metode 2: Bruke dekode () -funksjon

En annen metode er en dekode () -funksjon. Dekodefunksjonen fungerer rett motsatt av enkod () -funksjonen.

#convert byte til streng ved hjelp av dekode ()
str = b'blogs linuxhint '
trykk (str)
Print (Type (STR))
# Konverter nå bytes til streng
output = str.dekode()
trykk ('\ Noutput:')
Print (Output)
Print (Type (Output))

Produksjon:

B'blogs Linuxhint '

Produksjon:

Blogger Linuxhint

Linje 3: Vi har laget en byte -streng.

Linje 4 til 5: Disse linjene skriver bare ut informasjon om strengen vi opprettet på linje 3.

Linje 8: Nå kaller vi dekodefunksjonen og lagrer resultatet til et nytt variabeltavn.

Linje 11 til 12: Disse linjene viser at nå har strengen vår ikke lenger byte -type, og at vi kan bekrefte typen utgang, som er en strengtype.

Metode 3: Bruke kodekene.dekode () -funksjon

I denne metoden skal vi bruke kodeker.dekode () -funksjon. Denne funksjonen brukes til å konvertere den binære strengen til normale former. Så la oss se hvordan denne funksjonen faktisk fungerer.

#convert byte til streng ved hjelp av kodeker ()
Importer kodeker
str = b'blogs linuxhint '
trykk (str)
Print (Type (STR))
# Konverter nå bytes til streng
utgang = kodeker.avkode (str)
trykk ('\ Noutput:')
Print (Output)
Print (Type (Output))

Produksjon:

B'blogs Linuxhint '

Produksjon:

Blogger Linuxhint

Linje 2: Vi importerer bibliotekskodekene.

Linje 3: Vi har laget en byte -streng.

Linje 4 til 5: Disse linjene skriver bare ut informasjon om strengen vi opprettet på linje 3.

Linje 8: Nå ringer vi Caodecs.avkode funksjon og lagre resultatet til et nytt variabelt navn.

Linje 11 til 12: Disse linjene viser at nå har strengen vår ikke lenger av byte -type, og vi kan bekrefte typen av utgangen, som er en strengtype.

Metode 4: Bruke str () -funksjonen

Vi kan også konvertere byte til normale strenger ved å bruke str () -funksjonen. Det lille programmet for å forstå denne metoden er gitt nedenfor.

if __name__ == '__main__':
str1 = b'blogs linuxhint '
trykk (str)
Print (Type (STR))
# Konverter nå bytes til streng
output = str (str1, 'utf-8')
trykk ('\ Noutput:')
Print (Output)
Print (Type (Output))

Produksjon:


Produksjon:

Blogger Linuxhint

Linje 2: Vi har laget en byte -streng.

Linje 3 til 4: Disse linjene skriver bare ut informasjon om strengen vi opprettet på linje 3.

Linje 6: Nå kaller vi str () -funksjonen og lagrer resultatet til et nytt variabeltavn.

Linje 7 til 9: Disse linjene viser at nå har strengen vår ikke lenger byte -type, og vi kan bekrefte typen utgang, som er en strengtype.

Konklusjon

Som Python -programmerere jobber vi på forskjellige språk daglig, og noen ganger får vi en feil på grunn av byte. Så i denne artikkelen prøver vi å gi noen metoder hvordan du konverterer byte til streng, slik at når vi bruker metoder relatert til strengen, vil du ikke få noen feil.

I denne opplæringen har vi gitt alle konseptene vi kan bruke for å konvertere byte til strenger. Du kan velge i henhold til programkravene dine.