[英]Accessing an class attribute from subclass (Python)?
這是我的代碼格式:
class A(object):
def __init__(self, x, other):
self.other = other
self.x = x
class B(A):
def __init__(self):
# place code here
def something_else(self):
return self.x["foo"]
x
是我想調用的對象,稍后帶有下標(在something_else
。
我只想從父類繼承x
。 重要的是other
沒有被繼承,所以super().__init__
不適合。
我通過在class A
創建一個函數來嘗試解決方法:
def x(self):
return self.x
所以我可以在class B
調用super().x()
,但這也不起作用。
我曾嘗試直接調用super.x["foo"]
,但這不起作用。
在我的情況下,我怎樣才能實現我想要的? 謝謝!
變量並不總是必須在__init__
函數中注冊,如果你想要類A
x
,在A
有一個方法:
def set_x(self, x):
self.x = x
# other stuff
您仍然可以從B
類調用set_x
,因為所有函數都是繼承的,從那里您可以實例化屬性x
而無需從A
調用__init__
。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.