본문 바로가기
취미부자/취미1_코딩

패스트캠퍼스 챌린지 11일차 / 클래스와 객체

by 연습중인최 2021. 11. 11.
반응형

 


--오늘의 학습 범위--

 

Ch 08. 클래스

CH08_01. 클래스와 객체

 

 


어렵다...어렵다.....ㅠㅠ 잘 정리 해두고 틈틈히 보자~


CH08_01. 클래스와 객체

 

 클래스와 객체의 개념

클래스: 객체를 만들기 위한 설계도 (빵틀)

객체: 설계도로부터 만들어진 제품  (빵)

 

z.B>

클래스를 사용하지 않았을 때:

----------------------------------------------------------------------------------------------------------------------------

champion1_name = "이즈리얼"
champion1_health = 700
champion1_attack = 90

print(f"{champion1_name}님 소환사의 협곡에 오신 것을 환영합니다.")


champion2_name = "리산"
champion2_health = 800
champion2_attack = 95

print(f"{champion2_name}님 소환사의 협곡에 오신 것을 환영합니다.")

def basic_attack(name,attack):
print(f"{name} 기본 공격 {attack}")
basic_attack(champion1_name,champion1_attack)
basic_attack(champion2_name,champion2_attack)

----------------------------------------------------------------------------------------------------------------------------

run:

이즈리얼님 소환사의 협곡에 오신 것을 환영합니다.
리산님 소환사의 협곡에 오신 것을 환영합니다.
이즈리얼기본 공격 90
리산기본 공격 95


클래스를 사용했을 때:  데이터가 추가될 경우 클래스 사용시 훨씬 간편하다는 것을 알 수 있다.

----------------------------------------------------------------------------------------------------------------------------

class champion:
def __init__(self, name, health, attack):
self.name = name
self.health = health
self.attack = attack
print(f"{name}님 소환사의 협곡에 오신것을 환영합니다.")
def basic_attack(self):
print(f"{self.name}기본 공격{self.attack}")

 

ezreal = champion("이즈라엘", 700, 90)
leesan = champion("리산", 800, 95)

yasua = champion("야스와", 750, 92)
ezreal.basic_attack()
leesan.basic_attack()

yasua.basic_attack()

----------------------------------------------------------------------------------------------------------------------------

run:

이즈리얼님 소환사의 협곡에 오신 것을 환영합니다.
리산님 소환사의 협곡에 오신 것을 환영합니다.
이즈리얼기본 공격 90
리산기본 공격 95


클래스 만들기

클래스는 속성과 메서드의 집합

 

-속성은 어떠한 특징 모음

-메서드는 동작 모음

 

 

 

 

 

 

 

class 클래스 이름 :                           class Monster :        

     def 메서드이름(self):                       def say(self):   /모든 매서드에 첫번째 매개변수로 무조건 self가 들어간다. 

           명령블록                                       print("나는 몬스터다")

 

 

호출하기

인스턴스 = 클래스이름()                    goblin = Monster()

인스턴스.메서드()                             goblin.say()

      /명령블록                                       /print("나는 몬스터다") 

'인스턴스, 객체는 같은 말이'다 정도로 알아둘 것.

 

 

클래스 사용하기 / 실습

**파이썬에서는 자료형도 클래스다.

# 클래스 만들기 실습
class Monster :
    def say(self):
        print("나는 몬스터다")

goblin = Monster()
goblin.say()

#파이썬에서는 자료형도 클래스다.

a = 10
b = "문자열객체"
c = True

print(type(a))
print(type(b))
print(type(c))

** print(b.__dir__()) / b객체(문자열객체)안에 있는 메서드 리스트(문자열객체에서 사용할 수 있는 메서드)확인 가능

 

 

 

 

 

 

 

 

 

 

 

 

link : 

https://bit.ly/3FVdhDa

 

수강료 100% 환급 챌린지 | 패스트캠퍼스

딱 5일간 진행되는 환급챌린지로 수강료 100% 환급받으세요! 더 늦기전에 자기계발 막차 탑승!

fastcampus.co.kr

 

 

본 포스팅은 패스트캠퍼스 환급 챌린지 참여를 위해 작성되었습니다.

반응형

댓글