파이썬에서 AttributeError가 발생하는데 그 이유를 알 수 없습니다. 저는 Python을 처음 접하는 사람이므로 저를 괴롭히는 기준은 그리 높지 않습니다. 계속 오류 메시지가 나타납니다.
print ( '이름 :', emp.get_emp_name ())
AttributeError : 'ProductionWorker'개체에 '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()
개체는 자체 클래스 정의에 정의 된 메서드 또는 부모 클래스에 정의 된 메서드 만 호출 할 수 있습니다.
여기 get_emp_name()
에서 클래스 ProductionWorker
나 부모 클래스에 정의되지 않은 메서드 를 호출합니다 Employee
.
다음과 같이 변경할 수 있습니다.
print('Name:',emp.get_name())
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다