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

จะใช้คำสั่ง try-finally เพื่อจัดการกับข้อยกเว้นใน Python ได้อย่างไร?


จนถึงตอนนี้คำสั่ง try จับคู่กับส่วนคำสั่ง ยกเว้นเสมอ แต่ก็มีอีกวิธีในการใช้งานเช่นกัน คำสั่ง try สามารถตามด้วยประโยคสุดท้ายได้ คำสั่งย่อยสุดท้ายเรียกว่าคำสั่งการล้างข้อมูลหรือการยกเลิก เนื่องจากต้องดำเนินการภายใต้สถานการณ์ทั้งหมด กล่าวคือ คำสั่งคำสั่ง "สุดท้าย" จะถูกดำเนินการเสมอโดยไม่คำนึงว่าจะมีข้อยกเว้นเกิดขึ้นในบล็อกการลองหรือไม่

จุดหนึ่งที่สำคัญมากคือเราสามารถกำหนดส่วนคำสั่ง "ยกเว้น" หรือ "สุดท้าย" กับทุกบล็อกการลอง คุณไม่สามารถรวมสิ่งเหล่านี้เข้าด้วยกัน นอกจากนี้ คุณไม่ควรใช้ประโยค "อื่น" ร่วมกับประโยค "สุดท้าย"

ตัวอย่าง

รหัสที่กำหนดสามารถเขียนใหม่ได้ดังนี้

try:
foo = open ( 'test.txt', 'w' )
foo.write ( "It's a test file to verify try-finally in exception handling!!")            
print 'try block executed'
finally:
foo.close ()
print 'finally block executed'

ผลลัพธ์

try block executed
finally block executed