강의

멘토링

커뮤니티

인프런 커뮤니티 질문&답변

hyelanlove님의 프로필 이미지
hyelanlove

작성한 질문수

파이썬 무료 강의 (기본편) - 6시간 뒤면 나도 개발자

다중상속

언제 self?

작성

·

191

0

class Unit:
    def __init__(selfnamehp):
        self.name = name
        self.hp = hp

class Attackunit(Unit):
    def __init__(selfnamehpdamage):
       Unit.__init__(self, name, hp)
       self.damage = damage
        

    def attack(selflocation):
        print("{} : {}방향으로 적군을 공격합니다. [공격력 {}]".format(self.name, location, self.damage))
여기세어 왜 name과 damage는 self인데 location은 self가 아닌지 잘 모르겠습니다.

답변 1

1

나도코딩님의 프로필 이미지
나도코딩
지식공유자

답변이 늦어 죄송합니다.

location 의 경우 외부로부터 전달받은 값을 그대로 사용하는 것일 뿐이며 name 과 damage 는 클래스 객체의 멤버변수이기 때문에 self 를 붙여서 씁니다.

hyelanlove님의 프로필 이미지
hyelanlove

작성한 질문수

질문하기