2012-05-16 2 views
-1
에 별도의 클래스의 속성을 상속

나는 다른 내부 클래스를 인스턴스화하고 있습니다 :파이썬

class A(F): 

    def __init__(self): 
    return 

    b = B() 

클래스 B는 클래스 F 상속

class B(F): 
     def __init__(self): 
     return 

가 정의 된 F의 호텔을 고를 수 있습니다을 A 클래스에서 클래스 B (MySQL 연결 및 로깅 처리기)에 액세스해야합니다.

B는 인스턴스가되었을 때 F로 설정된 속성을 갖고 싶습니다 처음에는 A로 시작 했으므로 B 인스턴스에서 로깅/MySQL 핸들러를 다시 인스턴스화하지 않고 사용할 수 있습니다.

어떻게해야합니까? 질문이 불분명하면 죄송합니다.

+3

A는 F를 상속하므로 F는 A에 정의 된 속성을 가질 수 없습니다. 코드에서 올바른 순서를 사용 했습니까? –

+0

클래스의 함수에 대한 실제 이름으로 수행하려는 작업이 무엇인지 훨씬 명확하게 알 수 있습니다. –

답변

1

F에 공유 할 항목을 넣고 AB을 공유 할 수 있습니다. 예 :

class F(object): 
    def useful(self): 
     pass 

class A(F): 
    def something(self): 
     self.useful() 

class B(F): 
    def something_else(self): 
     self.useful()