Devdit
 

Python ตัวอย่าง และวิธีใช้ Try Except เพื่อป้องกันโปรแกรม Error

1.6K

Python try except คือ การเขียนโปรแกรมดักจับเหตุการณ์ที่คาดว่าอาจจะทำให้โปรแกรมเกิด Error หรือหยุดการทำงานลงได้ เราจะประยุกต์ใช้ try except กับการรับค่าตัวเลขจากผู้ใช้งาน โดยมีรายละเอียดดังนี้

 

ตัวอย่าง โค้ดที่ไม่ได้ใช้ try except

n = int( input('Please input number : ') )
print( 'n =',n )

ผลลัพธ์

Please input number : 99
n = 99

Please input number : text
Traceback (most recent call last):
  File "D:\python\test.py", line 1, in <module>
    n = int( input('Please input number : ') )
ValueError: invalid literal for int() with base 10: 'text'

พิจารณาปัญหาด้านบนกรณีไม่ได้ใช้ try except กรณีถ้าผู้ใช้งานกรอกตัวเลขโปรแกรมสามารถทำงานได้ตามปกติ แต่ถ้าผู้ใช้งานกรอกข้อมูลที่ไม่ใช่ตัวเลขจะส่งผลให้โปรแกรม Error และหยุดการทำงาน เนื่องจากไม่สามารถแปลงข้อมูลที่รับมาให้เป็นตัวเลขได้

 

ตัวอย่าง โค้ดที่ใช้ try except

try:
    n = int( input('Please input number : ') )
except:
    n = 0

print( 'n =',n )

ผลลัพธ์

Please input number : 99
n = 99
Please input number : text
n = 0

คำอธิบาย

1. ใช้ try except กับส่วนที่คาดว่าอาจจะเกิด Error หรือข้อผิดพลาดได้ ปกติจะเป็นส่วนที่มีการรับค่าจากแหล่งต่างๆ เช่น input หรือ network เป็นต้น

2. ใช้ try กับส่วนที่ตาดว่าจะเกิดปัญหา หรือ Error

3. ใช้ except กับกรณีถ้าเกิด Error หรือปัญหา จะให้โค้ดทำงานอย่างไร ตัวอย่างคือ ให้ n = 0 (กรณีถ้าผู้ใช้งานไม่ได้กรอกข้อมูลเป็นตัวเลขเข้ามา)

แก้ไข 2 ปีที่แล้ว
ชอบ
ลิ้งก์
แชร์
Devdit มีช่อง YouTube แล้ว
เราสร้างวิดีโอเกี่ยวกับเทคโนโลยี ทำตามง่ายๆ