Python 함수
함수
Python에서 함수를 정의할 때 def예약어와 함께 함수의 이름을 적어주고 :로 마치면 된다.
def print_num(): 좌측의 예시와 같이 함수명은 의미 단위로 _로 구분하는 snake case를 사용한다.
실행될 코드
함수와 함수 혹은 다른 코드와의 줄 간격은 일반적으로 2줄이다.
함수를 사용할때 특정 값을 입력받아서 함수에 전달할 때는 인자를 사용하면된다.
def print_num(n): 좌측의 예시와 같이 함수에 전달할 값을 () 소괄호 내부에 작성하면된다.
실행될 코드
인자의 개수가 2개 이상인 함수
인자값은 사용자가 원하는 만큼 갯수를 늘려서 줄 수 있다.
def print_num(n, m): 좌측의 예시와 같이 함수에 전달할 값들을 소괄호 내부에 작성하면 된다.
실행될 코드 인자 값은 원하는 만큼 넣어줄 수 있다.
위와 같이 함수를 작성하고 사용할때의 주의점은 함수 호출시 선언한 인자값의 개수만큼 넘겨줘야 한다.
위의 주의사항을 지키지 않는다면 TypeError: add() missing 1 required positional argument 해당하는 오류가 발생한다.
이런 경우를 방지하기 위해 def print_num(n, m = 0):와 같이 인자의 기본값을 정해줄 수 있다.
인자의 개수를 특정하지 않고 사용하고 싶을때는 *(asterisk) 사용할 수 있다.
def add(*args):
return sum(args)
result = add(1, 2, 3, 4, 5)
print(result)
→ 15 출력
*(asterisk)을 사용하면 인자 개수에 상관없이 tuple 자료구조 형태로 값들을 받아온다.
tuple은 sum() 내장함수를 지원함으로 위와같이 코드를 작성할 수 있다.
반환하는 함수
함수는 특정기능을 수행하는 형식으로 작성을 할 수도 있고 값을 반환하는 형식으로 작성할 수도 있다.
def add(a + b):
return a + b 좌측의 예시와 같이 특정값을 반환하고 싶을때는 return 예약어를 사용해서 작성할 수 있다.