19.9 키워드 인수를 모으기
12.4 가변 길이 인수 튜플(208쪽)에서 인수를 튜플로 모아서 처리하는 함수를 작성하는 방법을 살펴봤다.
def printall(*args):
print(args)
이 함수는 임의의 위치 인수(즉, 키워드가 없는 인수)와 호출할 수 있다.
>>> printall(1, 2.0, '3')
(1, 2.0, '3')
그러나 * 연산자는 키워드 인수를 모으지 않는다.
>>> printall(1, 2.0, third='3')
TypeError: printall() got an unexpected keyword argument 'third'
키워드 인수를 모으려면 ** 연산자를 사용해야 한다.
def printall(*args, **kwargs):
print(args, kwargs)