Skip to content
หน้าแรก » เขียนโปรแกรมภาษา Python ตอนที่ 56 เข้ารหัสข้อความ ด้วยเมธอด encode()

เขียนโปรแกรมภาษา Python ตอนที่ 56 เข้ารหัสข้อความ ด้วยเมธอด encode()

เขียนโปรแกรมภาษา Python ตอนที่ 56 เข้ารหัสข้อความ ด้วยเมธอด encode()

เขียนโปรแกรมภาษา Python ตอนที่ 56 เข้ารหัสข้อความ ด้วยเมธอด encode()

เมธอด endcode() เป็นเมธอดของสตริง ใช้สำหรับเข้ารหัสสตริงโดยเราสามารถกำหนดรูปแบบสำหรับการเข้ารหัสเองได้ แต่ถ้าเราไม่กำหนดรูปแบบ ไพธอนจะใช้ UTF-8 ในการเข้ารหัสโดยอัตโนมัติ โดยมีรูปแบบการใช้งานดังนี้

string.encode(encoding=encoding, errors=errors)

พารามิเตอร์ของเมธอด endcode() มีดังนี้

  • encoding สตริงระบุรูปแบบที่จะใช้ในการเข้ารหัส (จะระบุหรือไม่ก็ได้) ถ้าไม่ระบุ ไพธอนจะใช้ UTF-8 สำหรับการเข้ารหัสเป็นค่าตั้งต้น
  • errors สตริงสำหรับระบุข้อผิดพลาด (จะระบุหรือไม่ก็ได้) โดยค่าที่ใช้ได้มีดังนี้
    • 'backslashreplace' ใช้เครื่องหมายแบ็คแสลชแทนตัวอักษรที่ไม่สามารถเข้ารหัสได้
    • 'ignore' ไม่สนใจตัวอักษรที่ไม่สามารถเข้ารหัสได้
    • 'namereplace' แทนที่ตัวอักษรด้วยข้อความสำหรับอธิบายตัวอักษรนั้น
    • 'strict' (ค่าตั้งต้น) แจ้งว่าเกิดข้อผิดพลาด
    • 'replace' แทนที่ตัวอักษรด้วยเครื่องหมายคำถาม
    • 'xmlcharrefreplace' แทนที่ตัวอักษรด้วย xml character

ตัวอย่างการใช้งานเมธอด encode() แบบไม่ระบุพารามิเตอร์

mytext = "My name is Ståle"

x = mytext.encode()

print (x)

ตัวอย่างการใช้งานเมธอด encode() แบบระบุพารามิเตอร์

mytext = "My name is Ståle"

x = mytext.encode("UTF-16")

print (x)

ผลลัพธ์

ตัวอย่างการใช้งานเมธอด encode() แบบระบุ errors

mytext = "My name is Ståle"

print(mytext.encode(encoding="ascii",errors="backslashreplace"))
print(mytext.encode(encoding="ascii",errors="ignore"))
print(mytext.encode(encoding="ascii",errors="namereplace"))
print(mytext.encode(encoding="ascii",errors="replace"))
print(mytext.encode(encoding="ascii",errors="xmlcharrefreplace"))
print(mytext.encode(encoding="ascii",errors="strict"))

จากโค้ดตัวอย่าง เป็นการใช้งานเมธอด encode() โดยใช้ ascii encoding ผลลัพธ์จะแสดง error ที่แตกต่างกัน ตามพารามิเตอร์ errors ที่เราระบุ