在Python 中呼叫父類方法
在Python 中處理物件層次結構時,可能需要從父類中呼叫方法一個兒童班。與 Perl 或 Java 不同,Python 需要使用明確的父類別參考。
在提供的範例中,使用Foo::frotz() 的程式碼並不理想,因為它強制子類別類別來知道哪個類別定義了繼承的方法,從而導致創建深層層次結構時的信息依賴和潛在問題。
為了解決這個問題,Python 提供了 super() 函數。使用 super(),您可以從子類別存取和呼叫父類別方法,而無需明確指定父類別名稱。
對於Python 3 及更高版本,您可以簡單地使用:
class Foo(Bar): def baz(self, **kwargs): return super().baz(**kwargs)
對於Python 2,您必須明確啟用新樣式類別並使用:
class Foo(Bar): def baz(self, arg): return super(Foo, self).baz(arg)
以上是Python中如何呼叫父類別方法?的詳細內容。更多資訊請關注PHP中文網其他相關文章!