class A(object): # A must be new-style class def __init__(self): print "enter A" print "leave A"class B(C): # A --> C def __init__(self): print "enter B" super(B, self).__init__() print "leave B"
對於super(B, self).__init__()是這樣理解的:super(B, self)首先找到B的父類(就是類A),而後把類B的對象self轉換爲類A的對象(經過某種方式,一直沒有考究是什麼方式,慚愧),而後「被轉換」的類A對象調用本身的__init__函數函數