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

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


มีคลาส Exception ซึ่งเป็นคลาสพื้นฐานสำหรับ StopIteration, StandardError และ Warning ข้อผิดพลาดมาตรฐานทั้งหมดมาจาก StandardError ข้อผิดพลาดมาตรฐานบางอย่าง เช่น ArithmeticErrror, AttributeError, AssertionError มาจาก StandardError คลาสพื้นฐาน

เมื่อการอ้างอิงแอตทริบิวต์หรือการกำหนดล้มเหลว AttributeError จะเพิ่มขึ้น ตัวอย่างเช่น เมื่อพยายามอ้างอิงแอตทริบิวต์ที่ไม่มีอยู่:

เราเขียนโค้ดที่กำหนดใหม่และตรวจจับข้อยกเว้นและรู้ว่าเป็นประเภทใด

ตัวอย่าง

import sys
try:
class Foobar:
def __init__(self):
self.p = 0
f = Foobar()
print(f.p)
print(f.q)
except Exception as e:
print e
print sys.exc_type
print 'This is an example of StandardError exception'

ผลลัพธ์

0
Foobar instance has no attribute 'q'
<type 'exceptions.AttributeError'>
This is an example of StandardError exception