Pythoni stringi kodeerimine ()

String encode () tagastab antud stringi kodeeritud versiooni.

Alates Python 3.0-st salvestatakse stringid Unicode'ina, st stringi iga tähemärki tähistab koodipunkt. Nii et iga string on vaid Unicode'i koodipunktide jada.

Nende stringide tõhusaks salvestamiseks teisendatakse koodipunktide järjestus baitide kogumiks. Protsessi tuntakse kui kodeerimist .

Esitatakse erinevaid kodeeringuid, mis käsitlevad stringi erinevalt. Populaarsed kodeeringud on utf-8 , ascii jne.

Stringi encode()meetodi abil saate teisendada kodeerimata stringid mis tahes kodeeringuteks, mida Python toetab. Vaikimisi kasutab Python utf-8 kodeeringut.

Meetodi süntaks encode()on:

 string.encode (kodeerimine = 'UTF-8', vead = 'range')

Stringi kodeerimine () Parameetrid

Vaikimisi encode()ei vaja meetod parameetreid.

See tagastab stringi utf-8 kodeeritud versiooni. Ebaõnnestumise korral tekitab see UnicodeDecodeErrorerandi.

Kuid selleks on vaja kahte parameetrit:

  • kodeerimine - kodeerimise tüüp string peab olema kodeeritud
  • tõrked - reageerimine kodeerimise nurjumisel. Veateavet on kuut tüüpi
    • range - vaikevastus, mis tekitab tõrke korral erandi UnicodeDecodeError
    • ignoreeri - ignoreerib tulemuses kodeerimata unicode'i
    • asenda - asendab kodeerimata unicode küsimärgiks ?
    • xmlcharrefreplace - sisestab kodeerimata unicode'i asemel XML-märgiviite
    • backslashreplace - sisestab kodeerimata unicode'i asemel uNNNN-i põgenemisjärjestuse
    • nimeplaat - sisestab kodeerimata unicode'i asemel N (…) põgenemisjärjestuse

Näide 1: kodeerimine Utf-8 vaikekodeeringuks

 # 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) 

Väljund

Nöör on: pythön! Kodeeritud versioon on: b'pyth xc3 xb6n! '

Näide 2: kodeerimine veaparameetriga

 # 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")) 

Väljund

Nöör on: pythön! Kodeeritud versioon (koos ignoreerimisega) on: b'pythn! ' Kodeeritud versioon (asendusega) on: b'pyth? N! '

Märkus. Proovige ka erinevaid kodeerimis- ja veaparameetreid.

Huvitavad Artiklid...