--오늘의 학습 범위--
Ch 08. 클래스
CH08_02. 생성자
오늘도 역시나 어렵다... 😂 한번 봐서는 문과충은 따라갈 수가 없다. 여러번 볼 수 밖에...
그래도 차근차근 쌓여가는 느낌!! 힘내자.
-생성자(__init__)함수
** 생성자란? 인스턴스를 만들 때 호출되는 메서드 / 객체가 인스턴스를 포함하는 형태임
class Monster :
def say(self):
print("나는 몬스터다")
①체력
②공격력
③이동속도
---> 속성 추가하기
class Monster :
def __init__(self, health, attack, speed):
self.health = health
self.attack = attack
self.speed = speed
goblin = Monster(800, 120, 300)
wolf = Monster(1500, 200, 350)
(__init__)매서드는 인스턴스를 만들 때 반드시 호출되는 매서드!! :가장 먼저 호출되는 매서드임
-언제 인스턴스가 생성이 되느냐?
goblin = Monster(800, 120, 300) ---> 요시점
***( ) 안에 들어가는 데이터들은 __init__의 매개변수(self, health, attack, speed)로 순서대로 들어가게 된다.
***self는 매개변수로 치지 않는다.
-self 란? 인스턴스 자기 자신을 뜻함
①체력 감소하기
②체력 가져오기
---> 메서드 추가하기
class Monster :
def __init__(self, health, attack, speed):
self.health = health
self.attack = attack
self.speed = speed
def decrease_health(self, num):
self.health -= num
def get_health(self):
return self.health
goblin = Monster(800, 120, 300)
goblin.decrease_health(100)
print(goblin.get_health())
**첫번째 자리 무조건 self 들어가 있음.
**goblin 뒤 점을 찍어 메서드 호출
실습하기
class Monster:
def __init__(self, health, attack, speed):
self.health = health
self.attack = attack
self.speed = speed
# 매서드 만들기
def decrease_health(self, num):
self.health -= num
def get_health(self):
return self.health
# 고블린 인스턴스 생성
goblin = Monster(800, 120, 300)
goblin.decrease_health(100)
print(goblin.get_health())
#늑대 인스턴스
wolf = Monster(1500, 200, 350)
wolf.decrease_health(1000)
print(wolf.get_health())
link :
본 포스팅은 패스트캠퍼스 환급 챌린지 참여를 위해 작성되었습니다.
'취미부자 > 취미1_코딩' 카테고리의 다른 글
패스트캠퍼스 챌린지 14일차 / 클래스 / 오버라이딩,클래스 변수 (0) | 2021.11.14 |
---|---|
패스트캠퍼스 챌린지 13일차 / 클래스 / 상속 (0) | 2021.11.13 |
패스트캠퍼스 챌린지 11일차 / 클래스와 객체 (0) | 2021.11.11 |
패스트캠퍼스 챌린지 10일차 / 딕셔너리 (0) | 2021.11.10 |
패스트캠퍼스 챌린지 09일차 / 튜플 (0) | 2021.11.09 |
댓글