[파이썬] 함수의 가변 인자 활용 예시

가변 인자는 함수에 임의의 개수의 인자를 전달할 수 있는 기능입니다. 이를 활용하여 함수를 더 유연하게 사용할 수 있습니다.

1. 가변 인자 함수 정의하기

가변 인자 함수를 정의할 때에는 매개변수 이름 앞에 *를 붙여줍니다. 이는 함수가 임의의 개수의 인자를 받을 수 있다는 의미입니다. 예시 코드를 살펴봅시다.

def sum_numbers(*numbers):
    total = 0
    for num in numbers:
        total += num
    return total

위의 코드에서 sum_numbers 함수는 임의의 개수의 숫자를 받아서 그 합을 반환합니다. *numbers는 전달된 모든 인자들을 튜플 형태로 받아옵니다.

2. 가변 인자 함수 호출하기

가변 인자 함수는 인자를 여러 개 전달할 수 있습니다. 아래의 예시 코드를 통해 확인해봅시다.

result1 = sum_numbers(1, 2, 3)   
result2 = sum_numbers(4, 5, 6, 7, 8)   

위의 코드에서 sum_numbers 함수를 호출할 때, 인자로 여러 개의 숫자를 전달하였습니다. 이렇게 전달된 인자들은 *numbers에 튜플 형태로 저장되어 각각의 값에 접근할 수 있습니다.

3. 가변 인자와 일반 인자 함께 사용하기

가변 인자와 일반 인자를 같이 사용할 수도 있습니다. 가변 인자는 항상 일반 인자보다 뒤에 위치해야 합니다. 예시 코드를 살펴봅시다.

def greet_person(greeting, *names):
    for name in names:
        print(greeting, name)

greet_person("Hello", "Alice", "Bob", "Charlie")

위의 코드에서 greet_person 함수는 greeting과 임의의 개수의 names를 전달받아 각각을 화면에 출력합니다. greeting은 일반 인자로 전달되었고, *names는 가변 인자로 전달되었습니다.

이제, 위의 코드를 실행하면 “Hello Alice”, “Hello Bob”, “Hello Charlie”가 차례대로 출력됩니다.

마무리

Python에서 가변 인자를 활용하면 함수를 보다 유연하게 사용할 수 있습니다. 이를 활용하여 원하는 만큼의 인자를 전달하거나, 튜플 형태로 받아와 처리할 수 있습니다. 가변 인자는 함수의 다양한 활용성을 높이며, 코드의 가독성을 향상시킬 수 있습니다. 다음에 함수를 정의하거나 호출할 때, 가변 인자를 적극적으로 활용해보세요!