inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

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

다중상속

멤버변수를 어떨때 지정하는지 잘모르겠습니다 ㅜ

201

atta 001

작성한 질문수 3

0

#공중유닛
class flyable:
    def __init__(selfflying_speed):
        self.flying_speed = flying_speed
    
    def fly(selfnamelocation):
        print("{0} : {1} 방향으로 날아갑니다. [속도 {2}]"\
            .format(name, location, self.flying_speed))

fly에서 name과 location에 왜 self가 안붙는지

어떨때 self.hp = hp 처럼 멤버변수를 지정하는지 두가지가 궁급합니다

python

답변 1

0

uki020226

나중에 따로 입력하여 외부에서 받아올 변수는 self 가 안붙습니다. 

그러니까 class 에서 정의 한 것 
__init__ 안에서, 정의 할때는  이 입력된 hp 값을 이 클래스 내에서 사용할 꺼고, 이건 변하지 않을 변수다. 라고 생각될때. self.hp 에 저장 하는게 self.hp = hp 입니다. ( 오른쪽의 값을 왼쪽에 저장)

그리고, name 과 location 에는 안붙는건 그때 그때 다른 유닛 이름과 다른 위치로 명령을 내릴 것이기 때문이죠. 

즉 상속되지 않는 녀석들 이라서 그렇습니다. 

외부에서, 그때그때 항상 바뀔 수 있는 값들이라, self 를 떼고 그떄그떄 바꿉니다. __init__ 안에 안넣은 것들이요. 

quiz 8 오류 문제

0

69

1

str() 작성 위치

0

51

1

아나콘다

0

60

1

윈도우 설치 도와주세요

0

73

1

std_weight함수에서weight만return가능한가요?

0

67

1

오른쪽위 실행버튼을 누르면 터미널에 에러가 뜨고 컨트롤+F5를 누르면 에러가 안뜹니다.

0

33

1

설치해서 시작하는데 문제가 있습니다.

0

68

1

함수 입력할 때 설명 툴팁 나오게 하려면 어떻게 하나요?

0

103

1

2장 환경설정 문의

0

72

1

스타크래프트 프로젝트

0

74

1

python 파일명.py 입력시 Python 출력

0

133

1

로드맵 질문있습니다!

0

84

2

오류

0

74

1

질문 있습니다.

0

73

1

블로그에 학습한 내용을 정리해도 괜찮을까요?

0

171

1

#퀴즈 3의 5번 질문

0

71

1

print("ㅋ"*5) 에 대한 결과가 도출되지 않습니다

0

80

1

가변인자의 위치가 중요한가요?

0

79

1

vscode옛날 버전 설치

0

220

1

글자색상이 선생님처럼 안나옵니다

0

186

1

슬프네

0

155

1

quiz 6번 관련 문의입니다.

0

129

1

퀴즈#3에 대해서 이렇게 작성해도 되나요?

0

192

1

피드백 부탁드립니다

0

92

1