파이썬 두 클래스에서 다른 클래스 값을 사용하려면 어떻게 해야하나요?

조회수 2517회
class a:
    def aa(self):
        self.aaa = 1

class b:
    def bb(self):
        a.aa()

bbb = b()
bbb.bb()

b클래스에서 self.aaa값을 사용하려면 어떤 방식으로 해야하는지 궁금합니다.

  • 다른 클래스의 클래스 변수를 사용하려면 그 클래스를 상속받아야 하고(그 클래스가 전역공간에 있다면 상속필요없겠지만), 그 클래스의 인스턴스의 변수값을 가져오려면 그 인스턴스를 파라미터로 받아야 되지 않을까요? 그런데 질문에서 self.aaa에 접근하기우해서는, self가 클래스a의 인스턴스이므로 self를 변수에 담아 파라미터로 넘겨줘야... 알 수 없는 사용자 2020.6.6 10:50

1 답변

  • 코드를 지나치게 간소화하셔서 그런 것 같은데, 작성하신 코드만으로는 b라는 class가 어떤 역할을 해야 하는지 잘 모르겠습니다.

    질문하신 부분은 class ba를 상속받는지, a를 인스턴스 변수로 갖는지, a를 parameter로 받는지에 따라 다릅니다.

    그에 따라 class b에 있어서 bb가 하는 일이 self.aaa = 1로 설정하는 것이 될 수도 있고, self.a.aaa = 1로 설정하는 것이 될 수도 있고, parameter로 받은 class aaa를 실행하는 역할을 할 수도 있습니다.

    원하시는 방향이 어떤 것인지 잘 생각해 보시면 구현 방향이 구체화되지 않을까 싶습니다.

답변을 하려면 로그인이 필요합니다.

프로그래머스 커뮤니티는 개발자들을 위한 Q&A 서비스입니다. 로그인해야 답변을 작성하실 수 있습니다.

(ಠ_ಠ)
(ಠ‿ಠ)