본문 바로가기
코딩교육/Python 초등교육에서 전문가까지

1단계 : 8. 함수와 모듈 (feat. 매개변수와 반환값 이해)

by 제리토리 2025. 1. 31.
728x90
반응형

 

 

Python 함수에서 매개변수(parameter)반환값(return value)은 함수가 데이터를 처리하고 결과를 반환하는 데 중요한 요소입니다. 이 장에서는 매개변수와 반환값의 개념, 종류, 사용법, 그리고 다양한 예제를 통해 이를 깊이 이해할 수 있도록 설명합니다.

 

 

 

1. 매개변수란?

 

 

매개변수(Parameter)는 함수가 호출될 때 외부로부터 전달받는 입력값입니다.

매개변수를 통해 함수는 동적으로 동작하며, 다양한 입력값에 따라 다른 결과를 생성할 수 있습니다.

 

   ㉮ 매개변수의 정의

 

      함수 정의 시 괄호 안에 작성하며, 호출 시 값이 전달됩니다.

def 함수이름(매개변수1, 매개변수2, ...):
    실행할 코드

 

      예제: 매개변수로 숫자 더하기

def add(a, b):
    return a + b

result = add(3, 5)
print(f"결과: {result}")

 

      결과:

결과: 8

 

 

 

2. 매개변수의 종류

 

 

   ㉮ 위치 인수 (Positional Arguments)

      • 매개변수를 순서대로 전달합니다.

      • 함수 정의의 매개변수 순서와 일치해야 합니다.

 

      예제

def greet(first_name, last_name):
    print(f"안녕하세요, {first_name} {last_name}님!")

greet("홍", "길동")

 

      결과:

안녕하세요, 홍 길동님!

 

 

   ㉯ 키워드 인수 (Keyword Arguments)

      • 매개변수 이름을 지정하여 값을 전달합니다.

      • 순서와 관계없이 매개변수를 전달할 수 있습니다.

 

      예제

greet(last_name="길동", first_name="홍")

 

      결과:

안녕하세요, 홍 길동님!

 

 

   ㉰ 기본값 매개변수 (Default Parameters)

      • 매개변수에 기본값을 설정하여 인수가 전달되지 않을 때 사용할 값을 지정합니다.

 

      예제

def greet(name="손님"):
    print(f"안녕하세요, {name}님!")

greet()  # 기본값 사용
greet("홍길동")  # 값 전달

 

      결과:

안녕하세요, 손님님!
안녕하세요, 홍길동님!

 

 

   ㉱ 가변 매개변수

 

      ⓐ 가변 위치 인수 (*args)

         • 여러 개의 위치 인수를 받을 수 있습니다.

def add_all(*numbers):
    return sum(numbers)

result = add_all(1, 2, 3, 4, 5)
print(f"합계: {result}")

 

      결과:

합계: 15

 

      ⓑ 가변 키워드 인수 (**kwargs)

         • 여러 개의 키워드 인수를 받을 수 있습니다.

def user_info(**info):
    for key, value in info.items():
        print(f"{key}: {value}")

user_info(name="홍길동", age=30, city="서울")

 

      결과:

name: 홍길동
age: 30
city: 서울

 

 

 

3. 반환값이란?

 

 

반환값(Return Value)은 함수가 작업을 완료한 후 호출한 곳으로 전달하는 결과값입니다.

return 문을 사용하여 반환합니다.

 

 

   ㉮ 반환값의 사용

 

      예제: 두 숫자의 곱 반환

def multiply(a, b):
    return a * b

result = multiply(4, 5)
print(f"곱: {result}")

 

      결과:

곱: 20

 

 

   ㉯ 여러 값 반환

 

      return 문에 여러 값을 쉼표로 구분하여 반환할 수 있습니다. 반환된 값은 튜플 형태로 전달됩니다.

 

      예제: 사칙연산 결과 반환

def calculate(a, b):
    return a + b, a - b, a * b, a / b

results = calculate(10, 2)
print(f"결과: {results}")

 

      결과:

결과: (12, 8, 20, 5.0)

 

 

   ㉰ 반환값 없는 함수

 

      반환값이 없을 경우 return 문을 생략하거나, return None을 사용합니다.

 

      예제

def print_message():
    print("안녕하세요!")

result = print_message()
print(result)  # None 출력

 

     결과:

안녕하세요!
None

 

 

 

4. 매개변수와 반환값 활용 예제

 

 

   ㉮ 학생 점수 평균 계산

def calculate_average(*scores):
    return sum(scores) / len(scores)

average = calculate_average(85, 90, 78, 92)
print(f"평균 점수: {average:.2f}")

 

      결과:

평균 점수: 86.25

 

 

   ㉯ 간단한 계산기

def calculator(a, b, operation):
    if operation == "add":
        return a + b
    elif operation == "subtract":
        return a - b
    elif operation == "multiply":
        return a * b
    elif operation == "divide":
        if b != 0:
            return a / b
        else:
            return "0으로 나눌 수 없습니다."
    else:
        return "잘못된 연산입니다."

result = calculator(10, 5, "add")
print(f"결과: {result}")

 

      결과:

결과: 15

 

 

 

5. 매개변수와 반환값 사용 시 주의사항

 

 

   ㉮ 매개변수와 인수 일치:

      • 함수 호출 시 인수의 순서와 매개변수의 순서를 확인하세요.

 

   ㉯ 적절한 반환값 사용:

      • 반환값이 없는 경우도 코드의 의도를 명확히 표현하기 위해 return None을 명시적으로 사용하세요.

 

   ㉰ 유효성 검사:

      • 매개변수로 전달되는 값이 올바른지 확인하는 코드를 작성하여 함수의 안정성을 높입니다.

 

 

 

6. 요약

 

 

매개변수와 반환값은 Python 함수의 핵심 요소로, 함수의 유연성과 활용성을 극대화합니다.

매개변수를 통해 입력 값을 받아 작업을 수행하고, 반환값으로 결과를 전달하여 재사용성과 가독성을 높일 수 있습니다.

 

핵심 정리

 

   ㉮ 매개변수 종류:

      • 위치 인수, 키워드 인수, 기본값 매개변수, 가변 매개변수.

 

   ㉯ 반환값:

      • 단일 값, 여러 값, 또는 반환값이 없는 경우를 처리.

 

   ㉰ 활용:

      • 데이터를 처리하고 결과를 반환하는 함수 작성.

 

728x90
반응형