파이썬에서 함수의 매개변수와 인수는 함수를 정의하고 호출하는 데 사용되는 중요한 개념입니다.
1. 매개변수(Parameter)
매개변수는 함수 정의에서 함수가 받을 값을 나타냅니다. 함수 정의 시에 매개변수를 지정하고, 함수 내부에서 이 매개변수를 사용하여 작업을 수행합니다.
def add(x, y):
"""두 수를 더하는 함수"""
result = x + y
return result
위의 예제에서 x와 y가 함수 add의 매개변수입니다.
2. 인수(Argument)
인수는 함수를 호출할 때 함수에 전달되는 값입니다. 함수를 호출할 때는 정의된 매개변수에 실제 값을 전달하여 함수를 실행합니다.
result = add(3, 4)
위의 예제에서 3과 4가 함수 add에 전달되는 인수입니다. 이 인수는 함수 내에서 매개변수 x와 y에 대응됩니다.
3. 위치 인자(Positional Arguments)
가장 일반적인 방식으로, 함수를 호출할 때 인수를 위치에 따라 매개변수에 매핑합니다. 인수의 위치가 중요합니다.
result = add(3, 4)
이 경우 3은 x에, 4는 y에 대응됩니다.
4. 키워드 인자(Keyword Arguments)
키워드 인자는 함수 호출 시 매개변수의 이름을 지정하여 값을 전달하는 방식입니다. 위치에 따른 매핑이 아니기 때문에 순서는 중요하지 않습니다.
result = add(y=4, x=3)
이 경우에도 x에는 3, y에는 4가 대응됩니다. 키워드 인자를 사용하면 함수 호출 시 인수의 순서를 기억하지 않아도 되므로 가독성이 향상됩니다.
5. 기본값이 있는 매개변수(Default Parameters)
매개변수에 기본값을 설정하여 함수를 호출할 때 해당 매개변수에 값을 전달하지 않으면 기본값이 사용됩니다.
def greet(name="Guest"):
"""기본값이 있는 매개변수를 갖는 함수"""
print(f"Hello, {name}!")
# 함수 호출
greet() # 기본값 "Guest" 사용
greet("Alice") # 전달된 값 "Alice" 사용
6. 가변 인자(*args)와 키워드 가변 인자(**kwargs)
가변 인자와 키워드 가변 인자를 사용하면 함수를 정의할 때 인수의 개수가 가변적일 수 있습니다.
def example_function(*args, **kwargs):
"""가변 인자와 키워드 가변 인자를 갖는 함수"""
print("Positional Arguments:", args)
print("Keyword Arguments:", kwargs)
# 함수 호출
example_function(1, 2, 3, name="Alice", age=30)
이 경우 *args는 위치 인자를, **kwargs는 키워드 인자를 받습니다.
파이썬에서는 함수 정의 시에 매개변수와 함수 호출 시에 전달되는 인수를 매핑하는데, 이는 위치 인자, 키워드 인자, 기본값이 있는 매개변수, 가변 인자, 키워드 가변 인자 등을 통해 유연하게 함수를 정의하고 호출할 수 있게 합니다.
With ChatGPT
'Python > 포스팅' 카테고리의 다른 글
파이썬 가변 키워드 인자 (0) | 2023.12.03 |
---|---|
파이썬 키워드 인자(Keyword Arguments) (0) | 2023.12.03 |
파이썬 함수 (0) | 2023.12.02 |
파이썬 리스트 컴프리헨션 (0) | 2023.12.02 |
파이썬 for문의 range 함수 (0) | 2023.12.02 |