상위 목록: 하위 목록: 작성 날짜: 읽는 데 5 분 소요

키워드 인자화(Transform Keyword Argument)

키워드 인자화(Transform Keyword Argument)위치 인자(Positional Argument)를 키워드 인자처럼 사용하도록 강제하는 방법입니다.

**kwargs처럼 매개변수의 이름을 명확히 할당해야 함수를 사용할 수 있습니다.



Keyword Argument (1)

def func(name, *, value1, value2):
    total = value1 + value2
    print(name + "는", total, "입니다.")


func("Plus", value1=2, value2=3)
결과
Plus는 5 입니다.

매개변수를 선언할 때 와일드카드(*)가 도중에 할당된다면, 이후의 인자들은 키워드 인자가 됩니다.

함수의 value1value2는 함수를 사용할 때, 명시적으로 할당되어야 합니다.

인자의 사용 유/무를 강제하는 것이 아닌, 인자를 전달할 때 키워드로 전달하도록 강제합니다.

만약, 기본값이 할당되어 있다면 필수로 할당하지 않아도 됩니다.

또한, 인자를 전달할 때 위치 인자(Positional Argument)를 사용하듯이 순서를 지키지 않아도 됩니다.

위의 사항을 다음과 같이 사용할 수 있습니다.



Keyword Argument (2)

def func(name, *, value1, value2=3, value3):
    total = value1 + value2 + value3
    print(name + "는", total, "입니다.")


func("Plus", value3=2, value1=3)
결과
Plus는 8 입니다.

위와 같이 인자의 순서를 무시해도 됩니다.

기본값이 할당되어 있다면 필수적으로 값을 입력하지 않아도됩니다.

댓글 남기기