Python 31 - (복습) 클래스
2021. 5. 23. 17:06ㆍpython
반응형
반복되는 변수 & 메서드(함수)를 미리 정해놓은 틀(설계도)
쉽게 비유하면 붕어빵을 계속해서 만들어내기 위한 틀 이라고 생각하면 된다.
result = 0
def add(num):
global result 지역변수가 아닌 전역변수에 영향을
result += num 주려면 golbal을 써야한다.
return result 지역변수 = 함수 밖에 있는 result
전역변수 = 함수 안에 있는 result
print(add(3)) ---> 출력값 3
print(add(4)) ---> 출력값 4
위 코드가 계속 반복되면 아래처럼 계속해서 늘어나고 귀찮아질 것이다.
이렇게 반복되는 변수 & 함수를 위해 클래스라는 것이 존재한다.
쉽게 말해서 똑같은 함수는 계속 반복되니까 하나의 설계도로 묶어놓자 한 것!
result1 = 0
result2 = 0
def add1(num):
global result1
result1 += num
return result1
def add2(num):
global result2
result2 += num
return result2
print(add1(3))
print(add1(4))
print(add2(3))
print(add2(7))
아래는 클래스로 작성한 코드
class Calaculator: class는 꼭 대문자로 시작.
def __init__(self):
self.result = 0
def add(self, num):
self.result += num
return self.result
cal1 = Calaculator()
cal2 = Calaculator()
print(cal1.add(3))
print(cal1.add(4))
print(cal2.add(3))
print(cal2.add(7))
class FourCal:
def setdata(self, first, second):
self.first = first
self.second = second
a = FourCal() self에는 a가 들어가고
a.setdata(1, 2) first에는 1이 들어가고, second에는 2가 들어간다.
print(a.first) 출력값은 1
print(a.second) 출력값은 2
보통게임NPC들 대화 말걸기 요론고에 많이 쓰이기도 한다.
class FourCal:
def setdata(self, first, second):
self.first = first
self.second = second
def add(self):
result = self.first + self.second
return result
a = FourCal()
a.setdata(4, 2)
print(a.add()) ---> 출력값6
클래스는 수 차례 복습하고, 더 깊게 알아봐야겠다. 이해하기 다소 어려운 부분이 있다.
반응형
'python' 카테고리의 다른 글
Python 33 - (복습) 모듈 , 패키지 (0) | 2021.05.25 |
---|---|
Python 32 - (복습) 상속 (0) | 2021.05.24 |
Python 30 - (복습) 파일 읽고 쓰기 (0) | 2021.05.22 |
Python 29 - (복습) 함수 (0) | 2021.05.21 |
Python 28 - (복습) 반복문 (0) | 2021.05.20 |