[Python] 함수

Kook Han·2020년 5월 31일
0

Python

목록 보기
6/13

특정한 input이 주어지면 미리 지정된 문법을 통해 해당 input을 가공하여 output으로 도출해주는 기능을 함수라고 한다.

엑셀에서의 함수와 동일한 개념이라고 생각하면 보다 쉽게 이해할 수 있다.
엑셀에서 =average(a1:a10) 이라고 a1부터 a10까지의 평균을 구하려고 해당 함수를 사용한다면,
우리가 직접 입력하는 것은 어떤 계산을 하면 되는지를 규정하는 average라는 함수 명, 그리고 a1:a10이라는 데이터의 범위 뿐이다. 어떻게 평균을 내는지, (a1+a2...+a10)/10 과 같은 복잡한 수식을 직접 쓸 필요는 없다. average라고 함수명을 입력한 순간 지정된 수식을 엑셀에서 불러오기 때문이다.

파이썬에서는 함수를 직접 만들 수 있다고 보면 될 것이다.
함수를 정의하는 문법은 아래와 같다.

def 함수명(parameter):
	수행할 문법1
    수행할 문법2
    ...
    수행할 문법n
    return (return할 value)

위와 같이 함수를 정의하면, 이후에는 함수명(parameter 값)만 입력하면 해당 함수가 자동으로 불러와진다. 위의 문법을 참고하여 아래와 같이 두가지 값의 평균을 구해주는 함수를 작성해보자.

def average(num1, num2):
	average_value=(num1+num2)/2
	return (average_value)

이후 average(값1, 값2)를 입력하면 평균값이 아래와 같이 도출되게 된다.

average(8,4)
6.0

위 함수는 매우 단순하지만, 아래의 자연수 중 소수(Prime Number)를 구하는 함수처럼 함수를 정의할 때 if와 while 같은 문법을 사용하여 매우 복잡한 함수도 만들 수 있다.

함수를 잘 활용할 수 있으면 코드를 반복적으로 구현하지 않아도 되어 코드의 양이 적어지고 생산성이 높아지며, 또한 정의된 함수의 로직만 이해하면 함수 명만 봐도 로직을 알 수 있게 되어 가독성이 향상된다.

0개의 댓글