2013-07-13 17 views
-1

我在Python教程的第8章中解釋瞭如何定義自己的異常,這裏看起來像MyError類繼承了Exception類,但是當它覆蓋__init__時,參數值中的參數被分配給self.value ,但在這種情況下,是self.value這個類中的self.value在哪裏?

>>> class MyError(Exception): 
...  def __init__(self, value): 
...   self.value = value 
...  def __str__(self): 
...   return repr(self.value) 

回答

1

因爲它在文本just after the example說:異常的

在這個例子中,默認的init()已 覆蓋。新的行爲只是創建值屬性。

所以MyError類有價值,但標準Exception類沒有價值。 [har]