Python 강좌 : 제 20강 - 사용자 정의 함수
사용자 정의 함수(User-defined Functions)
사용자 정의 함수(User-defined Functions)는 코드를 구조적으로 설계할 수 있게 하는 역할을 합니다.
이를 통해 코드의 구조화(structuring), 모듈화(modularization), 재사용성(reusable), 가독성(Readability) 등을 높일 수 있습니다.
Python에서는 def와 return을 사용하여 사용자 정의 함수를 생성할 수 있습니다.
동일한 작업이 반복되는 경우에도 사용자 정의 함수를 호출하여 사용할 수 있습니다.
- Tip : 동일한 작업이 반복되지 않더라도, 코드의
가독성이나모듈화등을 위해 사용자 정의 함수를 사용합니다.
함수 생성
def add(a, b):
return a + b
print(add(3, 4))
print(add([1, 2, 3], [4, 5, 6]))
print(add("YUN", "DAEHEE"))- 결과
- 7
[1, 2, 3, 4, 5, 6]
YUNDAEHEE
def 함수명(매개변수1, 매개변수2, ....):를 사용하여 사용자 정의 함수를 선언할 수 있습니다.
함수명으로 사용자 정의 함수를 호출합니다.
해당 함수에서 사용될 인수들을 매개변수들에 선언합니다.
return 반환값을 사용하여 반환값이 결과로 반환됩니다.
- Tip :
정수,List,문자열등을 사용 할 수 있습니다.
기본값 설정
def add(a, b=10):
return a + b
print(add(1))
print(add(1, 2))- 결과
- 11
3
매개변수에 기본값을 할당할 수 있습니다.
기본값이 할당되면 함수를 호출할 때 매개변수를 채우지 않으면 기본값으로 사용합니다.
다중 입력
def add(*num):
result = 0
for i in num:
result += i
return result
print(add(1, 2, 3))- 결과
- 6
매개변수에 *를 입력할 경우 개수를 지정하지 않고 매개변수를 지정할 수 있습니다.
이를 인자(Argument)라 하며, 매개변수에 전달되는 실질적인 값(value)를 의미합니다.
다중 반환
def calc(a, b):
return a + b, a - b, a * b, a / b
print(calc(3, 1))- 결과
- (4, 2, 3, 3.0)
반환값을 여러개로 지정할 경우 Tuple 형식으로 결과들이 반환됩니다.
결괏값을 하나만 사용하는 res = calc(3, 1) 구조일 경우 Tuple 값으로 하나만 반환합니다.
만약, 결괏값을 함수 반환값 개수 만큼 사용하는 res1, res2, res3, res4 = calc(3, 1) 구조일 경우 각각의 결괏값이 변수에 할당됩니다.
일급 함수
def add(a, b):
return a + b
def func(x, y, z):
return x(y, z)
plus = add
print(plus(3, 4))
print(func(plus, 3, 4))- 결과
- 7
7
사용자 정의 함수를 다른 함수의 인수로 사용할 수 있으며, 변수나 자료구조에도 저장이 가능합니다.
사용자 정의 함수로 구성된 add 함수에 plus=add를 추가하여 add 함수를 plus로 사용이 가능합니다.
또한, func함수에서 x는 함수, y, z를 인수로 사용이 가능합니다.
func(함수, 인수1, 인수2)로 사용하여 사용자 정의 함수안에서 사용자 정의 함수를 호출 할 수 있습니다.
공유하기
Kakao
Naver
Twitter
LinkedIn
Facebook
댓글 남기기