2013-10-23 93 views

回答

2

一種情況下要調用的基類的__init__方法的所有類(即類型) - 和在個e-其他你AREN 「T。

由於此方法默認不執行任何操作,因此兩個列表實際上沒有區別。

(真正執行類創建魔元類__new__方法 - 這是不可能有Python中的新對象,而無需調用天然鹼基元類__new__方法

0

超級讓你避免提及。基類可以很好,但主要優點是多重繼承,其中可以發生各種各樣的fun stuff,如果還沒有,請參考standard docs on super

-1

塊1中的代碼將在Python 2,但會通過Python 3.代碼塊2將通過。

1

在python 3.x中,它意味着調用超類的__init__方法(即,類型)(就像它是當前類的一個方法SubType一樣,因爲當前類是超類的派生類)。

它是與調用超(類型,個體經營).__的init __()在Python 2.x的

例如:

class type: 
     def __init__(a): 
      print(a) 

class SubType(type): 
     def __init__(a): 
      super().__init__(a) 

>> obj = SubType(2) 
2 
>> 
+2

你忘了'self',該代碼不起作用 – CornSmith

相關問題