일반 전달값과 키워드 인자를 함께 사용해 함수를 호출할 때는 반드시 일반 전달값을 순서대로 먼저 적고 나서 키워드 인자를 적어야 합니다. 또한, 키워드 인자에 오타가 있으면 오류가 발생할 수 있으니 주의해 주세요.
def profile(name, age, main_lang): # 키워드 인자 : name, age, main_lang
print(name, age, main_lang)
profile("찰리", age=20, main_lang="파이썬") # 올바른 함수 호출: 일반 전달값을 먼저 작성
profile(name="루시", 25, "파이썬") # 잘못된 함수 호출: 키워드 인자를 먼저 작성
실행결과 |
찰리 20 파이썬 SyntaxError: positional argument follows keyword argument |
Note 위치 인자
함수를 호출할 때 함수에서 정의된 순서대로 입력하는 전달값을 위치 인자(positional argument)라고 합니다. 이 책에서는 키워드 인자와 구분하기 위해 쉬운 표현인 일반 전달값으로 표기했습니다.
def profile(name, age, main_lang):
print(name, age, main_lang)
profile("찰리", 20, "파이썬") # 위치 인자: "찰리", 20, "파이썬"