더북(TheBook)

4.8.1 *args 리스트

*args 문법은 모든 길이의 인수 리스트에 접근하는 데 사용된다.

def 함수_이름([일반_인수,] *args):
    문장

대괄호 기호 안에 위치한 여러 ‘일반_인수’는 선택적으로 추가할 수 있는 위치 인수(positional argument)들이며, 그 뒤로 *args가 뒤따른다. 이 모든 인수는 항상 선택적으로 추가할 수 있는 것들이다.

이 문법에서 이름 ‘args’는 사실 어떤 심벌릭 이름이 와도 상관없다. 관습적으로 파이썬은 args를 인수 리스트를 표현하는 데 사용한다.

심벌릭 이름 args는 파이썬 리스트로 인식되며, 인덱스로 항목을 검색하거나 for 루프 안에서 사용될 수 있다. 길이도 확인할 수 있다. 예시를 살펴보자.

def my_var_func(*args):
    print('The number of args is', len(args))
    for item in args:
        print(item)

함수 my_var_func는 어떤 길이의 인수 리스트와도 사용될 수 있다.

>>> my_var_func(10, 20, 30, 40)
The number of args is 4
10
20
30
40
신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.