-
파이썬 프로그래밍(python) 5 - 함수와 클래스(def, class)데이터분석/파이썬 2021. 11. 15. 23:09반응형
https://kbkb456.tistory.com/68
저번시간에는 조건문과 반복문을 활용하는 법에 대해서 배웠습니다.
오늘 배울것은 프로그래밍의 꽃인 함수와 클래스입니다.
함수와 클래스를 활용하면 정말 무궁무진한 프로그래밍이 가능해집니다!
1. 함수란 무엇일까요?
- 어떤 입력을 받으면 어떤 출력을 하는 것을 함수라고합니다.
함수의 문법
def 함수명(인자): 인자를 받아서 실행시킬 코드블럭 return 출력할 값
이런식으로 함수를 선언한다고 보시면 되겠습니다.
대표적인 함수 예제인 사칙연산을 함수로 구현한다고 한다면 이렇게 표현할 수 있을 것입니다.
# 더하기 def add(a,b): return a + b #빼기 def diff(a,b): return a - b #곱하기 def mul(a,b): return a * b #나누기 def div(a,b): return a / b
여기서 a,b는 인자라고 보면되고 return은 함수가 다 실행된 뒤에 출력되는 출력값이라고 보시면 됩니다.
print("더하기",add(1,2)) print("빼기",diff(1,2)) print("곱하기",mul(1,2)) print("나누기",div(1,2))
위에 함수를 선언한 것을 기반으로 1,2를 인자로 던져보겠습니다.
add의 경우 1,2를 더할것이고 diff는 빼고 mul은 더하고 div는 나눠줄 것입니다.
실행결과
이런식으로 인자를 받아서 return값을 반환해주는 것을 함수라고 합니다. 이것을 이용하면 자기가 원하는 기능들을 만들어낼 때 매우매우 편리합니다.
2. 클래스는 무엇일까요?
- 클래스는 똑같은 무엇인가를 계속해서 만들어 낼 수 있는 설계 도면을 클래스라고 합니다.
- 객체(object)란 클래스로 만든 피조물이라고 생각하시면 됩니다.
기본문법
class 클래스명: #인자 초기화 def __init__(self, 인자): 인자를 받아서 초기화 하는 코드 def 함수1(인자): return 함수1 결과 def 함수2(인자): return 함수2 결과 def 함수3(인자): return 함수3 결과
이런식으로 활용됩니다.
이번에는 클래스를 활용해서 계산기를 만들어 봅시다.
class calculator: #처음 인스턴스를 선언하면 변수를 초기화 함 def __init__(self, first, second): self.first = first self.second = second def add(self): result = self.first + self.second return result def mul(self): result = self.first * self.second return result def sub(self): result = self.first - self.second return result def div(self): result = self.first / self.second return result
코드설명
1. 인자 초기화
def __init__(self, first, second): self.first = first self.second = second
인자를 초기화 한 뒤에 first와 second에 클래스에서 받은 인자를 넣어주는 코드입니다.
2. 원하는 계산 실행(method)
def add(self): result = self.first + self.second return result def mul(self): result = self.first * self.second return result def sub(self): result = self.first - self.second return result def div(self): result = self.first / self.second return result
받은 인자로 원하는 계산을 실행할 수 있습니다. 이렇게 클래스 안에 있는 함수들을 메서드(method)라고 합니다.
클래스 선언 및 활용
클래스는 이렇게 인자와 함께 선언이 가능합니다.
a_cal = calculator(3,4)
자 이제 first에는 3이 second에는 4가 들어간 calculator 클래스 인스턴스가 만들어졌습니다.
여기서 인스턴스란 클래스로 만들어진 객체(변수)를 의미합니다.
이렇게 선언된 클래스 인스턴스를 활용해서 4가지 메서드를 활용할 수 있습니다.
# 클래스인스턴스.매서드명(인자) print(a_cal.add()) print(a_cal.mul()) print(a_cal.sub()) print(a_cal.div())
메서드를 활용할때는 이렇게 클래스 인스턴스.매서드() 이런식으로 활용이 됩니다.
오늘은 함수의 활용과 클래스에 대해서 배웠습니다. 사실 처음에는 이런 객체, 인스턴스, 메서드 이런단어는 어렵습니다. 하지만 계속 활용하다가 보면 어떤 느낌인지 아실겁니다! 열심히 합시다.
반응형'데이터분석 > 파이썬' 카테고리의 다른 글