Encod Python String ()

Kaedah encode string () mengembalikan versi yang dikodkan dari rentetan yang diberikan.

Sejak Python 3.0, rentetan disimpan sebagai Unicode, iaitu setiap watak dalam rentetan diwakili oleh titik kod. Jadi, setiap rentetan hanyalah urutan titik kod Unicode.

Untuk penyimpanan rentetan ini dengan cekap, urutan titik kod ditukar menjadi satu set bait. Prosesnya dikenali sebagai pengekodan .

Terdapat pelbagai pengekodan yang memperlihatkan rentetan secara berbeza. Pengekodan yang popular ialah utf-8 , ascii , dll.

Dengan menggunakan encode()kaedah rentetan , anda boleh menukar rentetan unicod menjadi pengekodan yang disokong oleh Python. Secara lalai, Python menggunakan pengekodan utf-8 .

Sintaks encode()kaedah adalah:

 string.encode (pengekodan = 'UTF-8', kesalahan = 'ketat')

String encode () Parameter

Secara lalai, encode()kaedah tidak memerlukan parameter apa pun.

Ia mengembalikan versi rentetan utf-8 yang dikodkan. Sekiranya gagal, ia menimbulkan UnicodeDecodeErrorpengecualian.

Walau bagaimanapun, ia memerlukan dua parameter:

  • pengekodan - jenis pengekodan yang harus dikodkan oleh rentetan
  • ralat - tindak balas semasa pengekodan gagal. Terdapat enam jenis tindak balas ralat
    • tegas - tindak balas lalai yang menimbulkan pengecualian UnicodeDecodeError pada kegagalan
    • abaikan - mengabaikan unicode yang tidak dapat dikodkan dari hasilnya
    • ganti - menggantikan unicode yang tidak dapat dikodkan menjadi tanda tanya ?
    • xmlcharrefreplace - memasukkan rujukan watak XML dan bukannya unicode yang tidak dapat dikodkan
    • backslashreplace - memasukkan urutan pelarian uNNNN dan bukannya unicode yang tidak dapat dikodkan
    • namereplace - memasukkan urutan pelarian N (…) dan bukannya unicode yang tidak dapat dikodkan

Contoh 1: Encode to Default Utf-8 Encoding

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

Pengeluaran

Rentetan itu ialah: pythön! Versi yang dikodkan adalah: b'pyth xc3 xb6n! '

Contoh 2: Pengekodan dengan parameter ralat

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

Pengeluaran

Rentetan itu ialah: pythön! Versi yang dikodkan (dengan diabaikan) adalah: b'pythn! ' Versi yang dikodkan (dengan ganti) adalah: b'pyth? N! '

Catatan: Cuba juga parameter pengekodan dan ralat yang berbeza.

Artikel menarik...