如果我有下面的類,有沒有辦法將在外部類__init__建構式中定義的變數傳遞到內部類的內部類建構式中?
class Outer:
def __init__(self, df):
self.df = df
class Inner:
## Looking to pass the df into this class
我偶然發現了這個解決方案,但我想知道是否有更簡單的解決方案?
我也遇到了這個解決方案,但是有了這個,我必須在呼叫內部類時插入 df 。有沒有辦法避免這種情況,如果它在外部類中初始化,我可以在呼叫內部類時自動檢索它,或者這是不可避免的?
uj5u.com熱心網友回復:
在創建內部物件之前,您沒有內部物件,此時您可以傳遞外部類的任何屬性:
class Outer:
def __init__(self, df):
self.df = df
self._inner = self.Inner(self.df)
class Inner:
def __init__(self, parent_df):
self.parent_df = parent_df
另請參閱嵌套類是好習慣嗎?
uj5u.com熱心網友回復:
class Outer:
def __init__(self, df):
self.df = df
class Inner(Outer):
pass
Inner現在將繼承Outer的屬性和方法
轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/327270.html
