Better Way 23

키워드 인자로 선택적인 기능을 제공하라

  1. 각자 책을 읽고, 읽은 부분 중 다음에 해당하는 내용들을 정리 (15분, 각자)
  • 중요하게 생각하는 것

키워드인자(keyword argument) ?

  • 키워드(식별자)가 정의된 인자. ex) a(x=2, y=3), a(**x)

위치인자(positional argument) ?

  • 키워드인자가 아닌 나머지 인자. 주로 앞쪽에 위치. ex) a(x, y), a(*x)

인자 전달 방법

func(20, 7)
func(20, divisor=7)
func(number=20, divisor=7)
func(divisor=7, number=20)
------------------------------------
func(number=20, 7) # SyntaxError: positional argument follows keyword argument
func(20, number=7) # TypeError: remainder() got muiltiple values for argument

참고) 파이썬이 인자를 처리하는 순서

다양한 인자의 사용 예시

ABC = {}
DEF = {}
func(**ABC)
func(number=20, **ABC)
func(**ABC, **DEF)
func(alpha=1.5, beta=9, 감마=4) # 한글 키워드도 가능

인자의 유연성이 제공하는 장점

  1. 함수 호출 시, 각 인자의 의미를 명확히 할 수 있다. (가독성)
  2. 키워드 인자를 활용해 디폴트값을 지정할 수 있다. (오류 예방, 활용성 증가)
  3. 확장성이 좋다.
  • 참고자료
  1. https://sikaleo.tistory.com/113
  2. https://velog.io/@suasue/Python-%ED%95%A8%EC%88%98-parameter%EC%9D%98-%EC%88%9C%EC%84%9Cfeat.-keyword-only-argument

좋은 웹페이지 즐겨찾기