시작하기무료로 시작하기

가변 길이 키워드 인자(**kwargs)를 사용하는 함수

이제 유연한 인자에 대해 더 깊이 들어가 볼게요. 이미 *args를 사용해 보셨으니, 이번에는 **kwargs를 사용할 차례예요! **kwargs의 차별점은 함수에 가변 개수의 키워드 인자를 전달할 수 있다는 점이에요. 이전 영상에서 다뤘듯이, 함수 정의 내부에서 kwargs는 딕셔너리입니다.

이 개념을 더 잘 이해하기 위해, 이번 연습에서는 **kwargs를 사용해 가변 개수의 키워드 인자를 받는 함수를 정의해 보겠습니다. 이 함수는 영화 속 캐릭터의 상태를 출력하는 단순한 상태 보고 시스템을 흉내 냅니다.

이 연습은 강의의 일부입니다

Python 함수 입문

강의 보기

연습 안내

  • 함수 이름 report_status로 함수 헤더를 완성하세요. 이 함수는 단일 유연 인자 **kwargs를 받습니다.
  • kwargs의 키-값 쌍을 순회(iterate)하면서 키와 값을 콜론 ':'으로 구분해 출력하세요.
  • 첫 번째 report_status() 호출에서는 다음 키워드-값 쌍을 전달하세요: name="luke", affiliation="jedi", status="missing".
  • 두 번째 report_status() 호출에서는 다음 키워드-값 쌍을 전달하세요: name="anakin", affiliation="sith lord", status="deceased".

실습형 인터랙티브 연습

이 예제를 이 샘플 코드를 완성하여 풀어보세요.

# Define report_status
def ____(____):
    """Print out the status of a movie character."""

    print("\nBEGIN: REPORT\n")

    # Iterate over the key-value pairs of kwargs
    for ____, ____ in kwargs.items():
        # Print out the keys and values, separated by a colon ':'
        print(____ + ": " + ____)

    print("\nEND REPORT")

# First call to report_status()


# Second call to report_status()
report_status(name=____, affiliation=____, status=____)
코드 편집 및 실행