Computer >> 컴퓨터 >  >> 프로그래밍 >> Python

파이썬(Python)에서 함수에 선택적 매개변수를 전달하는 방법

파이썬에서는 함수의 인자에 기본값(default value)을 지정할 수 있습니다. 함수를 호출할 때 해당 인자를 생략하면, 미리 정의해 둔 기본값이 자동으로 사용됩니다. 이렇게 기본값을 가진 인자를 선택적 매개변수(optional parameter)라고 부릅니다.

1. 기본값을 사용한 선택적 매개변수

아래 예제 코드를 살펴보겠습니다.

def greet(name, msg="Good Morning", msg2="Come on in"):
    return ("Hello", name + ", " + msg + "! " + msg2)

print(greet("Archie"))
print(greet("Richie", "How do you do?"))

실행 결과

('Hello', 'Archie, Good morning! Come on in')
('Hello', 'Richie, How do you do? Come on in')

위 코드에서 msgmsg2는 기본값이 정의되어 있으므로 선택적(optional) 인자입니다. 반면 name은 기본값이 없으므로 반드시 전달해야 하는 필수(required) 인자입니다.

  • greet를 인자 하나만으로 호출하면, msg는 기본값인 "Good Morning"으로, msg2는 "Come on in"으로 설정됩니다.
  • greet를 인자 두 개로 호출하면, 두 번째 값이 msg에 적용되고 msg2는 여전히 기본값인 "Come on in"을 사용합니다.

2. 키워드 인자로 순서에 상관없이 전달하기

대부분의 프로그래밍 언어에서는 위 함수를 호출하려면 세 개의 인자를 모두 순서대로 전달해야 합니다. 하지만 파이썬에서는 키워드 인자(named argument)를 사용하면 인자의 이름을 직접 지정하여 어떤 순서로든 값을 전달할 수 있습니다.

# 키워드 인자를 사용한 호출 예시
print(greet("Archie", msg2="Welcome!", msg="Good Evening"))

# 실행 결과
# ('Hello', 'Archie, Good Evening! Welcome!')

이처럼 파이썬의 기본값 인자와 키워드 인자를 활용하면, 필요한 값만 유연하게 전달하면서도 가독성 높고 재사용하기 쉬운 함수를 작성할 수 있습니다.