-
카테고리
-
세부 분야
프로그래밍 언어
-
해결 여부
미해결
멤버변수를 어떨때 지정하는지 잘모르겠습니다 ㅜ
21.02.17 22:39 작성 조회수 125
0
#공중유닛
class flyable:
def __init__(self, flying_speed):
self.flying_speed = flying_speed
def fly(self, name, location):
print("{0} : {1} 방향으로 날아갑니다. [속도 {2}]"\
.format(name, location, self.flying_speed))
fly에서 name과 location에 왜 self가 안붙는지
어떨때 self.hp = hp 처럼 멤버변수를 지정하는지 두가지가 궁급합니다
답변을 작성해보세요.
0
uki020226
2021.06.15
나중에 따로 입력하여 외부에서 받아올 변수는 self 가 안붙습니다.
그러니까 class 에서 정의 한 것
__init__ 안에서, 정의 할때는 이 입력된 hp 값을 이 클래스 내에서 사용할 꺼고, 이건 변하지 않을 변수다. 라고 생각될때. self.hp 에 저장 하는게 self.hp = hp 입니다. ( 오른쪽의 값을 왼쪽에 저장)
그리고, name 과 location 에는 안붙는건 그때 그때 다른 유닛 이름과 다른 위치로 명령을 내릴 것이기 때문이죠.
즉 상속되지 않는 녀석들 이라서 그렇습니다.
외부에서, 그때그때 항상 바뀔 수 있는 값들이라, self 를 떼고 그떄그떄 바꿉니다. __init__ 안에 안넣은 것들이요.
답변 1