Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Python

จะตรวจจับข้อยกเว้น python ในการทำความเข้าใจรายการได้อย่างไร


ไม่มีฟังก์ชันในตัวใน Python ที่ให้คุณจัดการหรือละเว้นข้อยกเว้น ดังนั้นจึงไม่สามารถจัดการข้อยกเว้นทั้งหมดในความเข้าใจรายการ เนื่องจากความเข้าใจรายการประกอบด้วยนิพจน์หนึ่งรายการขึ้นไป เฉพาะข้อความสั่งเท่านั้นที่สามารถจับ/เพิกเฉย/จัดการข้อยกเว้นได้

การมอบหมายการประเมินนิพจน์ย่อยที่มีแนวโน้มว่าจะมีข้อยกเว้นให้กับฟังก์ชัน เป็นวิธีแก้ปัญหาชั่วคราวที่เป็นไปได้ ส่วนอื่นๆ เป็นการตรวจสอบค่าที่อาจก่อให้เกิดข้อยกเว้น

วิธีที่เราสามารถจัดการกับปัญหานี้ได้คือการใช้รหัสต่อไปนี้

ตัวอย่าง

foo = (5,7,1,0,9)
def bar(self):
try:
return [1/i for i in foo]
except ZeroDivisionError as e:
print e
bar(foo)

ผลลัพธ์

integer division or modulo by zero
Process finished with exit code 0