我一直在試圖理解Python實現OOP的。傳遞一個對象作爲參數傳入一個子類在python
基本上我需要的東西,這是規定人l其他類作爲其方法輸入使用一些全局屬性的超類。例如:
這是我認爲它應該做的事:
class One():
def __init__(self, name):
self.name = name
class Two(One):
def __init__(self, name): # name from class one...
One.__init__(self, name)
def method_using_name_from_one(self, name_from_one):
return name_from_one
我想,我可以只在聲明類Two
所有方法作爲一個類的方法做到這一點,但我更喜歡讓他們分開。回顧一下:我希望類2中方法的參數使用類One
中聲明的屬性。所以基本上我想傳入一個實例化對象作爲類Two
方法的參數參數。
你期待'self'不有1類2級的方法的屬性?剛使用'self.name'有什麼問題? – user2357112
我對你不瞭解的東西感到非常困惑。你可以在類'Two'內的方法中使用self.name' –
參數'name_from_one'對我來說似乎是一種代碼味道。如果要通過一個值作爲參數,它不是真的「從一個」。如果您想在鏈式構造函數中使用分配給您的'Two'實例的'name'屬性的值,請使用'self.name',如其他人所述。 –