**kwargs 사용 방법

leeway·2023년 2월 21일
0
post-thumbnail

python에서 함수 정의를 볼 때, **kwargs를 종종 볼 수 있음

**kwargs에서 kwargs는 keyword argument의 줄임말로 관례적으로 사용할 뿐, **keywords처럼 다른 이름을 사용해도 됨

함수에서 이름이 지정된 가변 인자를 처리할 때 사용하며, dictionary 형태로 값을 전달함

**kwargs 사용하기

def my_function(**kwargs):
    result = []
    # Iterating over the Python kwargs dictionary
    for arg in kwargs.values():
        result.append(arg)
    return ' '.join(result)

print(my_function(a='Python', b='is', c='fun!')) # Python is fun!

**kwargs 사용하는 이유는?

- chatGPT 답변

  • 유연성: 전달해야 할 인수의 수를 알 수 없을 때 또는 사용자가 선택적 인수를 지정하도록 허용하려는 경우 유용할 수 있습니다.

  • 가독성: 위치 지정 대신 인수를 이름으로 지정하면 함수가 하는 일을 이해하기 쉬울 때가 많습니다.

  • 코드 재사용: 유사한 키워드 인수가 필요한 여러 함수가 있다면 **kwargs를 사용하여 코드 중복을 피할 수 있습니다. 이렇게하면 코드를 더 모듈화하고 유지 보수하기 쉬워질 수 있습니다.

  • 미래 대비성: 나중에 함수에 새로운 키워드 인수를 추가하더라도 **kwargs를 사용하는 코드는 새 인수가 기본값을 갖는 한 여전히 작동합니다.


Reference

profile
자연어처리 개발자

0개의 댓글