Question: Starting Out with Python (3rd Edition) Chapter 11 question one has a question and I have transcribed the solution but I cannot figure out why
"Starting Out with Python (3rd Edition)" Chapter 11 question one has a question and I have transcribed the solution but I cannot figure out why it is wrong. The solution I have is as follows. I keep getting the error message, "AttributeError: 'ProductionWorker' object has no attribute 'get_emp_name'"
class Employee: def __init__(self, name, number): self.__name = name self.__number = number
#set methods def set_name(self,name): self.__name = name def set_number(self,number): self.__number = number
#get methods def get_name(self): return self.__name def get_number(self): return self.__number
class ProductionWorker(Employee): def __init__(self, name, number, shift_num, pay_rate): Employee.__init__(self, name, number) self.__shift_num = shift_num self.__pay_rate = pay_rate
#set methods def set_shift_num(self,shift_num): self.__shift_num = shift_num def set_pay_rate(self,pay_rate): self.__pay_rate = pay_rate
#get methods def get_shift_num(self): return self.__shift_num def get_pay_rate(self): return self.__pay_rate
def main(): print('Please enter the following details.') name = input('Name:') number = input('Employee Number:') sh = input('Shift Number:') pay_rate = input('Pay Rate:') emp = ProductionWorker(name, number, sh, pay_rate)
print('Here is the employee information:') print('Name:',emp.get_emp_name()) print('Employee Number:',emp.get_emp_number()) print('Shift Number:',emp.get_shift_num()) print('Pay Rate:',emp.get_pay_rate())
main()
Step by Step Solution
There are 3 Steps involved in it
Get step-by-step solutions from verified subject matter experts
