1. *args

args(arguments)는 내가 원하는 여러가지 인자들을 가변인수로 받을 수 있습니다. 값들은 모두 tuple로 저장됩니다.

입력

def print_args(*args):
    print(args)
    for x in args:
        print(x)

print_args(100, True, 'leehojun')

출력

(100, True, 'leehojun')
100
True
leehojun

2. **kwargs

**kwargs는 딕셔너리로 가변인수를 받을 수 있는 방법입니다. *arg와 마찬가지로 고정인수와 가변인수 함께 쓸 수 있습니다.

args(arguments)는 튜플 형식으로 파라미터를 받는 반면 kwargs(keyworded arguments)는 딕셔너리 형태로 파라미터를 받습니다.

입력

def print_kwargs(a, **kwargs):
    print(a)
    print(kwargs)
    for i in kwargs:
        print(i)

print_kwargs(100, name='leehojun', age='10')

출력

100
{'name': 'leehojun', 'age': '10'}
name
age

3. *args와 **kwargs 응용