2016-12-20 11 views
2

run() 메서드를 사용하는 수퍼 클래스가 있습니다.어떻게 수퍼 클래스의 메소드를 파이썬으로 이름을 바꿉니 까?

나는 자신의 run() 메소드를 갖고 싶어하는 수퍼 클래스의 서브 클래스를 만든다. 그러나이 새로운 객체에 대해 oldrun()이라는 메소드에서 이전 실행 메소드의 기능을 유지하려고합니다.

어떻게하면 파이썬에서이 작업을 수행 할 수 있습니까?

+1

이것은 당신이 주변에 이전 버전을 유지하려는 이유는 좀 더 구체적인 이유가 ...하고 싶어하는 이상한 것 같아? – mgilson

+0

이상하게 보입니다. 개체를 상속 한 다음 잠재적으로 혼란스러운 방식으로 API를 변경하십시오. – innisfree

답변

4

이처럼 할 수있는 :

class Base(object): 
    def run(self): 
     print("Base is running") 

class Derived(Base): 
    def run(self): 
     print("Derived is running") 

    def oldrun(self): 
     super().run()