- 코딩 테스트에서 테스트 케이스가 입력된 뒤에 테스트 케이스만큼 특정한 알고리즘 수행 결과를 반복적으로 출력하는 문제가 많음
- 이럴 때 코드를 함수화하면 매우 효과적
- 함수를 작성할 때 함수 내부에서 사용되는 변수의 값을 전달 받기 위해 매개변수를 정의할 수 있음
- 함수의 값을 반환하고자 할 때는 return 사용
- 함수에서 매개변수나 return문이 존재하지 않을 수도 있음
- 파이썬 함수 구조
def 함수명(매개변수):
실행할 소스코드
return 반환 값
def add(a, b):
return a + b
print(add(3, 7))

def add(a, b):
print('함수의 결과 : ', a + b)
add(3, 7)

- 함수 호출 과정에서 인자를 넘겨줄 때 파라미터의 변수를 직접 지정할 수 있음
- 매개변수의 순서가 달라져도 상관 없는 것이 특징
def add(a, b):
print('함수의 결과 : ', a + b)
add(b = 3, a = 7)

- 함수 안에서 함수 밖의 변수 데이터 변경시 global 키워드 사용
- global 키워드로 변수를 지정하면 지역 변수를 만들지 않아도 바깥에 선언된 변수 참조
a = 0
def func():
global a
a += 1
for i in range(10):
func()
print(a)

- 람다 표현식을 사용해서 함수를 간단하게 작성할 수 있음
- 특정 기능 수행 함수를 한 줄에 작성할 수 있다는 점이 특징
- 정렬 라이브러리 사용할 때 정렬 기준을 설정할 때 자주 사용
def add(a,b):
return a + b
# 일반적인 add() 메소드 사용
print(add(3,7))
# 람다 표현식으로 구현한 add() 메소드
print((lambda a, b: a + b),(3,7))