Python-strengkode ()

Strengkodemetoden () returnerer kodet versjon av den gitte strengen.

Siden Python 3.0 lagres strengene som Unicode, dvs. at hvert tegn i strengen er representert med et kodepunkt. Så hver streng er bare en sekvens av Unicode-kodepunkter.

For effektiv lagring av disse strengene konverteres sekvensen av kodepunkter til et sett med byte. Prosessen er kjent som koding .

Det er forskjellige kodinger til stede som behandler en streng annerledes. De populære kodingene er utf-8 , ascii , etc.

Ved hjelp av strengens encode()metode kan du konvertere unikodede strenger til alle kodinger som støttes av Python. Som standard bruker Python utf-8- koding.

Syntaksen for encode()metoden er:

 string.encode (koding = 'UTF-8', feil = 'streng')

Strengkode () Parametere

Som standard encode()krever metoden ingen parametere.

Den returnerer utf-8 kodet versjon av strengen. Ved svikt reiser det et UnicodeDecodeErrorunntak.

Det tar imidlertid to parametere:

  • koding - kodingstypen en streng må kodes til
  • feil - svar når koding mislykkes. Det er seks typer feilrespons
    • streng - standardrespons som gir unntak av UnicodeDecodeError ved feil
    • ignorere - ignorerer den ukodbare unicoden fra resultatet
    • erstatte - erstatter den ukodbare unicoden til et spørsmålstegn ?
    • xmlcharrefreplace - setter inn XML-tegnreferanse i stedet for unencode
    • backslashreplace - setter inn en uNNNN escape-sekvens i stedet for unencodable unicode
    • namereplace - setter inn en N (…) escape-sekvens i stedet for unencode-unicode

Eksempel 1: Kod til standard Utf-8-koding

 # unicode string string = 'pythön!' # print string print('The string is:', string) # default encoding to utf-8 string_utf = string.encode() # print result print('The encoded version is:', string_utf) 

Produksjon

Strengen er: pythön! Den kodede versjonen er: b'pyth xc3 xb6n! '

Eksempel 2: Koding med feilparameter

 # unicode string string = 'pythön!' # print string print('The string is:', string) # ignore error print('The encoded version (with ignore) is:', string.encode("ascii", "ignore")) # replace error print('The encoded version (with replace) is:', string.encode("ascii", "replace")) 

Produksjon

Strengen er: pythön! Den kodede versjonen (med ignorere) er: b'pythn! ' Den kodede versjonen (med erstatning) er: b'pyth? N! '

Merk: Prøv også forskjellige kodings- og feilparametere.

Interessante artikler...