Book/파이썬 코딩의 기술

[BW 22] 변수 위치 인자를 사용해 시각적인 잡음을 줄여라

31514 2024. 10. 23. 12:43

스타 인자를 사용하면 함수 호출이 더 깔끔해지고 시각화 잡음도 줄어든다.

def log(message, *values):
    if not values:
        print(message)
    else:
        values_str = ', '.join(str(x) for x in values)
        print(f'{message}: {values_str}')

log('내 숫자는', 1, 2)
log('안녕')

>>>
내 숫자는: 1, 2
안녕

하지만 두 가지 문제가 있다.

  1. 스타 인자가 함수에 전달되기 전에 항상 튜플로 변환되어 메모리를 소비한다.
    • 따라서 스타 인자로 들어오는 데이터가 충분히 작아야 한다.
  2. 함수에 새로운 인자를 추가하면 해당 함수를 호출하는 모든 코드를 변경해야 한다.