파이썬에서는 함수의 매개변수가 기본값을 가질 수 있습니다. 이것을 디폴트 인수(default argument)라고 합니다.
예를 들어 아래와 같이 인사를 하는 함수 greet()가 있다고 합시다. greet()는 항상 2개의 인수를 받아야 합니다.
def greet(name, msg):
print("안녕", name + ', ' + msg)
greet("봉민", "좋은 아침!")
<실행 결과>
안녕 봉민, 좋은 아침!
만약 우리가 greet() 함수에 2개의 인수를 전달하지 않으면 오류가 발생합니다.
def greet(name, msg):
print("안녕", name + ', ' + msg)
greet("봉민")
<실행 결과>
TypeError: greet() missing 1 required positional argument: 'msg'
만약 인수가 부족한 경우에 기본값을 넣어주는 기능이 있다면 편리할 것입니다. 바로 이것이 디폴트 인수입니다.
def greet(name, msg = "잘 지내니?"):
print("안녕", name + ', ' + msg)
greet("봉민")
<실행 결과>
안녕 봉민, 잘 지내니?