함수(function)는 「특정 작업을 수행하는 코드의 묶음에 이름을 붙여 재사용할 수 있게 만든 것」입니다.
파이썬에서는 「def 함수이름(매개변수): 코드」 형식으로 만들고, 「함수이름()」으로 호출합니다.
기본 예시: def greet(name): print(f"안녕하세요, {name}님!").
greet("홍길동") — 「안녕하세요, 홍길동님!」 출력.
함수를 한 번 정의하면 여러 번 호출해 같은 동작을 반복할 수 있어, 「복사-붙여넣기」를 줄이고 코드를 깔끔하게 만들어 줍니다.
함수가 결과를 「반환(return)」할 수도 있습니다.
def add(a, b): return a + b.
result = add(3, 5) — result는 8.
return 문이 만나면 함수가 즉시 종료되고 그 값이 호출한 곳으로 돌아갑니다.
return 없는 함수는 자동으로 None을 반환합니다.
매개변수에 「기본값」을 줄 수 있습니다.
def greet(name="손님"): print(f"안녕하세요, {name}님!").
greet()는 「안녕하세요, 손님님!」, greet("홍길동")은 「안녕하세요, 홍길동님!」.
호출 시 인자를 생략하면 기본값이 사용됩니다.
함수 사용의 큰 장점은 「DRY 원칙(Don't Repeat Yourself)」 — 같은 코드를 반복하지 않는 — 을 자연스럽게 따르게 해 준다는 점입니다.
또 「한 함수는 한 가지 일만」 하도록 작게 쪼개면 테스트·수정·재사용이 모두 쉬워집니다.
한 줄 요약
함수는 def 함수이름(매개변수): 형식으로 만들어 코드 묶음을 재사용 가능하게 합니다.
return으로 값을 돌려주고, 매개변수에 기본값을 줄 수 있어 유연합니다.
더 알아볼 것
- 키워드 인자(keyword argument)
- *args와 **kwargs — 가변 인자
- docstring — 함수 설명 작성