我遇到了我的代碼問題。我試圖創建一個繼承父類的屬性和方法的子類,但它不起作用。這是我到目前爲止:不繼承父類的子類
class Employee(object):
def __init__(self, emp, name, seat):
self.emp = emp
self.name = name
self.seat = seat
下面的代碼塊 - 子類有問題。
我必須再次創建__init__
嗎?我該如何爲子類創建一個新的屬性。從閱讀問題,這聽起來像__init__
在子類中將重寫父類 - 如果我稱它來定義另一個屬性是真的嗎?
class Manager(Employee):
def __init__(self, reports):
self.reports = reports
reports = []
reports.append(self.name) #getting an error that name isn't an attribute. Why?
def totalreports(self):
return reports
我想要Employee類中的名稱在報告列表中。
舉例來說,如果我有:
emp_1 = Employee('345', 'Big Bird', '22 A')
emp_2 = Employee('234', 'Bert Ernie', '21 B')
mgr_3 = Manager('212', 'Count Dracula', '10 C')
print mgr_3.totalreports()
我想reports = ['Big Bird', 'Bert Ernie']
,但它不工作
[錯誤的可能重複:「X實例有沒有屬性y「當試圖從類繼承](http://stackoverflow.com/questions/6143693/error-x-instance-has-no-attribute-y-when-trying-to-inherit-from-class ) –
'我要報告= ['大','鳥']但它不起作用 - 你的意思是'報告=''大鳥','伯特厄尼']?如果是這樣,那不是繼承是如何工作的。 Manager類不知道您以前創建的任何Employee實例*。還是你得到一個不同的錯誤? –