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

จะจับ SystemExit Exception ใน Python ได้อย่างไร


ในเอกสารประกอบของ python SystemExit ไม่ใช่คลาสย่อยของคลาส Exception คลาส BaseException เป็นคลาสพื้นฐานของ SystemExit ดังนั้นในโค้ดที่กำหนด เราจะแทนที่ Exception ด้วย BaseException เพื่อให้โค้ดทำงานได้

ตัวอย่าง

try:
raise SystemExit
except BaseException:
print "It works!"

ผลลัพธ์

It works!

ข้อยกเว้นสืบทอดจาก BaseException แทน StandardError หรือ Exception เพื่อไม่ให้โค้ดดักจับข้อยกเว้นโดยบังเอิญ

เราอยากเขียนโค้ดด้วยวิธีนี้

ตัวอย่าง

try:
raise SystemExit
except SystemExit:
print "It works!"

ผลลัพธ์

It works!