ทำความรู้จักกับภาษา python (14) : การจัดการข้อผิดพลาดใน python (ไพทอน)

แชร์ความรู้ภาษา Python ไพทอน การเขียนโปรแกรมภาษาไพทอน

Moderator: mindphp, ผู้ดูแลกระดาน

dawthana
PHP Super Hero Member
PHP Super Hero Member
โพสต์: 604
ลงทะเบียนเมื่อ: 07/12/2016 10:55 am

ทำความรู้จักกับภาษา python (14) : การจัดการข้อผิดพลาดใน python (ไพทอน)

โพสต์ที่ยังไม่ได้อ่าน โดย dawthana »

การจัดการข้อผิดพลาดใน python (ไพทอน)
exception (เอ็กซ์เซปชั่น) คือเหตุการณ์ยกเว้นเนื่องจากในบางครั้งที่โปรแกรมกำลังทำงานแล้วเกิดเหตุการณ์ผิดปกติ หรือ Error (เออเร่อร์) ทำให้ดำเนินงานขัดข้อง จึงจำเป็นต้องมีวิธีการกำจัด โดยใช้ Exception เข้ามาช่วยเพื่อให้แสดงผลของข้อผิดพลาดที่สามารถเข้าใจง่าย โดยการใช้ Exception Handling ในภาษา python ประกอบไปด้วย try ...except (ทาย...เอ็กซ์เซป) , try...finally (ทาย...ไฟนอลลี่) , raise (เรส)

รูปแบบการเขียน Exception Handling (เอ็กซ์เซปชั่น แฮนดิ้ง)

โค้ด: เลือกทั้งหมด

try :
    Statement(s)
    .........................
    .........................
except Exception1 :
    Statement(s)
   .........................
   .........................
except Exception2 :
   Statement(s)
  .........................
  .........................
else :
   Statement(s)
   .........................
   .........................
โดย else จะมีหรือไม่มีก็ได้
ตัวอย่างรูปแบบการเขียน Exception Handling
ถ้าในกรณีที่กรอกข้อมุลที่ไม่ใช่ตัวเลขจะแสดงผลแบบในกรอบสีแดง
try_except.png
try_except.png (29.31 KiB) Viewed 2127 times
สรุปการเขียน Exception Handling
-ในส่วนของ try หรือ except สามารถมีหลาย statement ได้
-except สามารถมีเงื่อนไขและมีหลายๆ except ได้
-ส่วนของ else (เอล) จะมีหรือไม่มีก็ได้
-เพื่อแสดงผลของข้อผิดพลาดที่เกิดขึ้นให้เข้าใจได้ง่าย
-ไม่ทำให้โปรแกรมหยุดทำงานได้โดยไม่คาดคิด

ศึกษาข้อมุลมาจาก https://www.youtube.com/watch?v=TRpSr1y ... lzdKrpxsMM
แก้ไขล่าสุดโดย dawthana เมื่อ 25/01/2017 4:49 pm, แก้ไขไปแล้ว 1 ครั้ง.
dawthana
PHP Super Hero Member
PHP Super Hero Member
โพสต์: 604
ลงทะเบียนเมื่อ: 07/12/2016 10:55 am

Re: ทำความรู้จักกับภาษา python (14) : การจัดการข้อผิดพลาดใน python (ไพทอน)

โพสต์ที่ยังไม่ได้อ่าน โดย dawthana »

สามารถศึกษาข้อมูลเพิ่มเติมได้ที่ https://www.mindphp.com/vdo-tutorial-pyt ... error.html
Dive Demo
PHP Sr. Member
PHP Sr. Member
โพสต์: 84
ลงทะเบียนเมื่อ: 01/02/2017 11:10 am

Re: ทำความรู้จักกับภาษา python (14) : การจัดการข้อผิดพลาดใน python (ไพทอน)

โพสต์ที่ยังไม่ได้อ่าน โดย Dive Demo »

เข้าใจในการตรวจ error มากขึ้นครับ
Four
PHP Super Hero Member
PHP Super Hero Member
โพสต์: 813
ลงทะเบียนเมื่อ: 08/01/2018 9:55 am

Re: ทำความรู้จักกับภาษา python (14) : การจัดการข้อผิดพลาดใน python (ไพทอน)

โพสต์ที่ยังไม่ได้อ่าน โดย Four »

โค้ด: เลือกทั้งหมด

import sys


try:
    test = int(input("Number : "))

except:
    print ("error")
    sys.exit()

print ("Number is", test)
ผลรัน

รูปภาพ
I am slow walker, but I never walk back. (Abraham Lincoln)
ภาพประจำตัวสมาชิก
Jom07
PHP Super Hero Member
PHP Super Hero Member
โพสต์: 514
ลงทะเบียนเมื่อ: 08/01/2018 9:56 am

Re: ทำความรู้จักกับภาษา python (14) : การจัดการข้อผิดพลาดใน python (ไพทอน)

โพสต์ที่ยังไม่ได้อ่าน โดย Jom07 »

ตัวอย่าง Python ดักจับ Error

โค้ด: เลือกทั้งหมด

try:
    var_int = 10 * (5/0)
    print('ผลของการคำนวฯเลข', var_int)
except:
    print ('ไม่สามารถหารด้วย 0 ได้')
ผลรัน

รูปภาพ

ศึกษาข้อมูลจาก : https://www.youtube.com/watch?v=TRpSr1y ... M&index=14
รูปภาพ
Patcharanan.0399
PHP Hero Member
PHP Hero Member
โพสต์: 114
ลงทะเบียนเมื่อ: 09/04/2018 10:04 am

Re: ทำความรู้จักกับภาษา python (14) : การจัดการข้อผิดพลาดใน python (ไพทอน)

โพสต์ที่ยังไม่ได้อ่าน โดย Patcharanan.0399 »

โค้ด: เลือกทั้งหมด

try:
   var_int = 10 * (5/0)
   print "Ans is : ",var_int
except:
  print "Can't divide by 0"
  
ผลการรัน
โปรแกรมแจ้ง Error ว่าไม่สามารถการด้วย 0 ได้
โปรแกรมแจ้ง Error ว่าไม่สามารถการด้วย 0 ได้
ผลลัพธ์ Except.jpg (2.27 KiB) Viewed 1960 times

ศึกษาจาก https://youtu.be/TRpSr1yDDWU
rangsan
PHP Hero Member
PHP Hero Member
โพสต์: 199
ลงทะเบียนเมื่อ: 30/04/2018 9:44 am

Re: ทำความรู้จักกับภาษา python (14) : การจัดการข้อผิดพลาดใน python (ไพทอน)

โพสต์ที่ยังไม่ได้อ่าน โดย rangsan »

การจัดการข้อผิดพลาดใน python (ไพทอน)

โค้ด: เลือกทั้งหมด

import sys

try:
    number_input = int(raw_input("Please input number 1-20 : "))
except ValueError:
    print "Your input the wrong number :("  
    sys.exit()
    
if number_input<1 or number_input>20:
    print 'Your input error :('
else:
    print "Your Number is : ",number_input
ผลการรันโค้ด
การจัดการข้อผิดพลาด.png
การจัดการข้อผิดพลาด.png (21.5 KiB) Viewed 1939 times
ศึกษาจาก : https://www.youtube.com/watch?v=TRpSr1y ... lzdKrpxsMM
It’s never too late to start again.
anuwat somsakul
PHP Full Member
PHP Full Member
โพสต์: 44
ลงทะเบียนเมื่อ: 08/08/2018 9:49 am

Re: ทำความรู้จักกับภาษา python (14) : การจัดการข้อผิดพลาดใน python (ไพทอน)

โพสต์ที่ยังไม่ได้อ่าน โดย anuwat somsakul »

การจัดการข้อผิดพลาดใน Python ดักจับ Error

โค้ด: เลือกทั้งหมด

import sys
try:
    number = int(input("Please enter a number: "))
except ValueError:
    print("You input the wrong number")
    sys.exit()

print("You number is :" ,number)
ผลลัพธ์
กรอกตัวเลข
Selection_005.png
Selection_005.png (16.33 KiB) Viewed 1853 times
ที่ไม่ใช่ตัวเลข
Selection_006.png
Selection_006.png (17.86 KiB) Viewed 1853 times
ภาพประจำตัวสมาชิก
chatee supasand
PHP VIP Members
PHP VIP Members
โพสต์: 1666
ลงทะเบียนเมื่อ: 04/06/2019 10:06 am

Re: ทำความรู้จักกับภาษา python (14) : การจัดการข้อผิดพลาดใน python (ไพทอน)

โพสต์ที่ยังไม่ได้อ่าน โดย chatee supasand »

ขอบคุณ ครับเค้าใจเนื้อหาดีมากเลยครับ
รูปภาพ
ภาพประจำตัวสมาชิก
jirawoot
PHP VIP Members
PHP VIP Members
โพสต์: 3129
ลงทะเบียนเมื่อ: 17/06/2019 10:30 am

Re: ทำความรู้จักกับภาษา python (14) : การจัดการข้อผิดพลาดใน python (ไพทอน)

โพสต์ที่ยังไม่ได้อ่าน โดย jirawoot »

โค้ด: เลือกทั้งหมด

try:
    a_int = 10 * (5 / 0)
    print(a_int)
except:
    print('ไม่สามารถหารด้วย 0 ได้')
ผลลัพธ์
Selection_013.png
Selection_013.png (6.75 KiB) Viewed 1315 times

โค้ด: เลือกทั้งหมด

import sys
try:
    num = int(input('input number 1-10 :'))
except ValueError:
    print ("you input the wrong number")
    sys.exit()

print('you number is :', num)
ผลลัพธ์
Selection_014.png
Selection_014.png (7.87 KiB) Viewed 1315 times
ตอบกลับโพส
  • Similar Topics
    ตอบกลับ
    แสดง
    โพสต์ล่าสุด

ผู้ใช้งานขณะนี้

สมาชิกกำลังดูบอร์ดนี้: ไม่มีสมาชิกใหม่ และบุคลทั่วไป 40