เรียนเขียนโปรแกรมง่ายๆ กับ Expert Programming Tutor ในบท Built - in Excaptions
ใน python จะมี built-in exceptions มาหลายชนิดสำหรับการดักจับข้อผิดพลาดในรูปแบบต่างๆ
ชนิดของ EXCEPTION |
รายละเอียด |
AssertionError |
จะเกิดขึ้นเมื่อมีการใช้คำสั่ง assert เพื่อทำการตรวจสอบโปรแกรม แล้วข้อมูลที่ตรวจสอบไม่ตรงกับเงื่อนไขที่กำหนด |
AttributeError |
จะเกิดขึ้นเมื่อมีการกำหนดค่าหรือเข้าถึงข้อมูลของคุณลักษณะ(attribute) แล้วเกิดข้อผิดพลาด |
EOFError |
จะเกิดขึ้นเมื่อเรียกใช้ฟังก์ชัน input() แต่ข้อมูลในไฟล์ถูกอ่านไปจนถึงตำแหน่งสุดท้ายแล้ว |
FloatingPointError |
จะเกิดขึ้นเมื่อการดำเนินการกับเลขทศนิยมเกิดข้อผิดพลาด |
GeneratorExit |
จะเกิดขึ้นเมื่อฟังก์ชัน close() ของ generator ถูกเรียกใช้ |
ImportError |
จะเกิดขึ้นเมื่อมีการ import โมดูลที่ไม่มีอยู่จริง |
IndexError |
จะเกิดขึ้นเมื่อมีการเข้าถึงข้อมูลในลำดับที่อยู่นอกเหนือจากลำดับของช่วงข้อมูลจริง |
KeyError |
จะเกิดขึ้นเมื่อ มีการเรียกใช้ข้อมูลจากคีย์ที่ไม่มีอยู่จริงในข้อมูลชนิดดิกชันนารี |
KeyboardInterrupt |
จะเกิดขึ้นเมื่อผู้ใช้งานกด interrupt key (ctrl+c หรือ delete) |
MemoryError |
จะเกิดขึ้นเมื่อมีหน่วยความจำไม่เพียงพอในระหว่างการดำเนินการ |
NameError |
จะเกิดขึ้นเมื่อมีการใช้เรียกใช้ตัวแปรที่ไม่มีอยู่จริงทั้ง local และ global scope |
NotImplementedError |
จะเกิดขึ้นเมื่อ จากฟังก์ชันที่ประกาศเป็น abstract นั้นยังไม่ได้ทำการ implement ฟังก์ชันจริงเพื่อใช้งาน |
OSError |
จะเกิดขึ้นเมื่อมีการดำเนินการกับระบบแล้วมีข้อผิดพลาดที่เกี่ยวข้องกับระบบปฏิบัติการ |
OverflowError |
จะเกิดขึ้นเมื่อผลของการดำเนินการทางคณิตศาสตร์นั้นทำให้เกิดข้อมูลขนาดใหญ่กว่าจะแสดงผลได้ |
ReferenceError |
จะเกิดขึ้นเมื่อ weak reference proxy ถูกใช้เพื่อเข้าถึงข้อมูลที่ถูก garbage collect ไปแล้ว |
RuntimeError |
จะเกิดขึ้นเมื่อข้อผิดพลาดที่เกิดขึ้นนั้น ไม่สามารถจัดอยู่ในหมวดหมู่เฉพาะอื่นๆ ได้ |
StopIteration |
จะเกิดขึ้นเมื่อ มีการเรียกใช้ฟังก์ชัน next() เพื่อจะทำการดึงข้อมูลค่าต่อไป แต่ตำแหน่งดังกล่าวนั้นไม่มีข้อมูลลำดับต่อไปอีก |
SyntaxError |
จะเกิดขึ้นจากตัว parser เมื่อเกิดกรณีเกิดข้อผิดพลาดเกี่ยวกับหลักภาษา(syntax) |
IndentationError |
จะเกิดขึ้นเมื่อ มีการใช้รูปแบบการย่อหน้า(indent) ไม่ถูกตามหลักภาษา |
TabError |
จะเกิดขึ้นเมื่อ รูปแบบย่อยหน้า(indent) มีการใช้แทป(tab) หรือช่องว่างที่ไม่สอดคล้องกัน ทำให้ไม่ถูกต้องตามหลักภาษา |
SystemError |
จะเกิดขึ้นเมื่อ ตัวแปรภาษาเจอข้อผิดพลาดที่เกิดจากระบบแต่ไม่รุนแรงถึงขั้นต้องหยุดการดำเนินการโปรแกรมทั้งหมด |
SystemExit |
จะเกิดขึ้นเมื่อ มีการเรียกใช้ฟังก์ชัน system.exit() แล้วเกิดข้อผิดพลาด |
TypeError |
จะเกิดขึ้นเมื่อ ฟังก์ชันหรือตัวดำเนินการนั้นใดๆ ต้องดำเนินการกับออบเจ็คที่ไม่ถูกต้องตามชนิดของออบเจ็คที่ฟังก์ชันหรือตัวดำเนินการเหล่านั้นรองรับ |
UnboundLocalError |
จะเกิดขึ้นเมื่อ มีการอ้างอิงกับตัวแปรชนิด local สำหรับฟังก์ชัน หรือ method แต่ไม่มีข้อมูลใดอ้างอิงกับตัวแปรดังกล่าว |
UnicodeError |
จะเกิดขึ้นเมื่อการ encode/decode unicode เกิดข้อผิดพลาดในระหว่างดำเนินการ |
UnicodeEncodeError |
จะเกิดขึ้นเมื่อ ระหว่างการ encode unicode เกิดข้อผิดพลาดในระหว่างดำเนินการ |
UnicodeDecodeError |
จะเกิดขึ้นเมื่อ ระหว่างการ decode unicode เกิดข้อผิดพลาดในระหว่างดำเนินการ |
ValueError |
จะเกิดขึ้นเมื่อฟังก์ชันได้รับข้อมูลสำหรับตัวแปรมาตรงตามชนิดสามารถรองรับได้ แต่ค่าที่ได้รับไม่เหมาะสมทำให้เกิดข้อผิดพลาด |
ZeroDivisionError |
จะเกิดขึ้นเมื่อการใช้ ตัวส่วนของการหารมีค่าเป็น 0 |
แปลจาก https://www.w3schools.com/python/python_ref_exceptions.asp
Tag ที่น่าสนใจ: python built-in_exceptions programming error_handling exception_types syntaxerror nameerror valueerror zerodivisionerror attributeerror importerror indexerror keyerror memoryerror typeerror
หากมีข้อผิดพลาด/ต้องการพูดคุยเพิ่มเติมเกี่ยวกับบทความนี้ กรุณาแจ้งที่ http://m.me/Expert.Programming.Tutor
085-350-7540 (DTAC)
084-88-00-255 (AIS)
026-111-618
หรือทาง EMAIL: NTPRINTF@GMAIL.COM