2023-01-13 23:43:54

이 글은 파이썬 코드에서 *args, **kwargs를 만나고 당황하신 분들을 위한 글입니다. 

 

*args

*args는 임의의 개수의 인수(arguments)를 뜻합니다. 여러 개의 인수를 받아서 "튜플"의 형태로 저장해줍니다.

 

def hello(*args):
    print(args)
    for name in args:
        print(f"안녕, {name}")


hello("홍길동", "김개똥", "연개소문")

 

 

**kwargs

*args는 임의의 개수의 키워드 인수(keyword arguments)를 뜻합니다. 여러 개의 키워드 인수를 받아서 '딕셔너리'의 형태로 저장해줍니다. 

 

def hello(**kwargs):
    print(kwargs)
    for (key, value) in kwargs.items():
        print(f"{key}: {value}")


hello(name="심교훈", skill="파이썬", job="개발자")

 

 

참고자료

[1] https://velog.io/@amuse/python-%EB%A7%A4%EA%B0%9C%EB%B3%80%EC%88%98-args-kwargs