상속

2017-01-16 1 views
0

그래서 내 문제는 내가 소스를 상속 통합 파서 클래스를 원하는, 기본적으로 ...상속

print(Other().get()) ## Works 
>>> {"u":1} 
print(Again().get()) ## Failed 

##Traceback (most recent call last): 
## File "~/Desktop/_source.py", line 69, in <module> 
## print(Again().get()) 
## File "~/Desktop/_source.py", line 66, in get 
## return self.srcname 
##AttributeError: 'Again' object has no attribute 'srcname' 

입니다 이름은 이미 다른 클래스에서 할당 된 후에 적용됩니다. 대신이의

+0

를 참조에 대한 자세한 설명을위한

은''... 우리 ... 그것은 작동하지 않았다'''코드를보기'와 역 추적 한이 있다면 .. – wwii

+0

댓글 주셔서 감사합니다. 방금 편집했습니다. 희망이 더 좋습니다. –

+0

'''Again(). get()'''은 게시 한 코드와 함께 AttributeError를 던지지 않습니다. 도움이 필요한 문제가 아직 명확하지 않습니다. 어쩌면 http://stackoverflow.com/help/mcve를 읽고 다른 질문을 게시하십시오. – wwii

답변

2

:

class Data(Source): 
    def __init__(self): 
     Source.__init__(self) 

이 유지 :

super().__init__() 

가 부모 클래스에서 상속 (생성자)을 나타냅니다

class Data(Source): 
    def __init__(self): 
     super().__init__(self) 

때문이다. 인수를 super()로 언급 할 수 있습니다. 초기화() 생성자. 클래스와 상속이 http://www.python-course.eu/python3_inheritance.php