파이썬에서 함수는 다음과 같이 정의한다.
def 함수명 (매개변수):
실행할 소스코드
return 반환 값
들여쓰기가 중요하다…
파이썬에서 함수는 내장함수와 사용자 정의 함수로 구별할 수 있다.
간단한 함수를 만들어보자.
def add(a,b):
return a+b
print(add(3,7))
파이썬에선 파라미터의 매개변수를 직접 지정할 수 있어서 매개변수의 순서가 크게 중요하지 않다.
def add(a,b):
print(a+b)
add(b=3, a=7)
파이썬에선 함수 블록 밖의 스코프를 참조하고 싶다면 global
키워드를 이용해야 한다. 일반적인 프로그래밍 언어들이 자동으로 상위 스코프를 찾아가는 것과 다르다.
a = 0
def func():
global a
a+=1
놀랍게도 파이썬에선 함수가 반환값을 여러개 가질 수 있다…!
def operator(a,b):
add_var = a+b
subtract_var = a-b
return add_var, subtract_var
a,b = operator(1,2)
이렇게 여러개 값을 반환하는 것을 패킹, 그리고 구조분해할당처럼 여러 반환값을 변수에 담아주는걸 언패킹이라고 한다.