함수의 기본 구조와 활용

1. 함수의 기본 구조

: 함수의 경우 사전에 정의된 있는 것들을 사용하는 경우가 많지만, 보는 이의 이해를 돕고 코드의 길이를 효율적으로 줄이기 위해 반복되거나 중요한 구문을 함수로 정의하는 경우가 많다. 함수를 정의함에 있어 인풋(인자 - argument, parameter)과 아웃풋 (결과값)의 개념이 중요한데 중학교 시절 배웠던 Y = F(x) 함수식에 착안해 생각한다면 이해할 수 있다.

#함수 정의 방법과 인자에 활용에 대한 사례
def func1(parameter1, parameter2):
    print("hello~!",parameter1,"I'm",parameter2)
func1('drogba','lampard')

 

2. 함수 내 return의 활용

: 결과값을 추가적으로 활용하고자 할 때에는 return을 통해 값을 받고 이에 대응하는 변수를 활용하는 방식을 취할 수 있다.

#보통의 경우 리턴은 한 개의 값만 가능한데, 파이썬의 경우 튜플의 형태로 여러개의 결과값을 저장할 수 있다.

#함수 안에서 리턴 이후의 것들은 실행되지 않는 특징이 있다. 따라서 작성자에 다라 코드 종료의 문구로 사용하기도 한다.

 

#return을 통해 변수에 해당 결과값을 기입할 수 있음
def func1(parameter1, parameter2):
	return parameter1 + parmeter2

y = func1(1,2)
#y에 3(1+2)의 값이 들어가 변수로서 추가적인 활용이 가능함

 

3. local variable과 global variable의 차이

: 함수의 인자, 혹은 함수 내 정의된 값은 해당 결과값에만 영향을 미칠 뿐, 함수 밖 변수에는 영향을 끼치지 않는다는 점을 주의해야 한다. 아래 예시를 보면 sum 함수 내에 정의된 c는 함수 내에서면 영향을 미치는 local variable로 함수 밖 print(c)할 경우 undefined 로 출력됨을 확인할 수 있다.

def sum(a,b):
    c = 5
    result = a + b + c
    return result

print(sum(1,2)) #값으로 8출력
print(c)        #not defined 에러 출력

+ Recent posts