Python을 배워보자/5. 함수

파이썬 함수의 매개변수와 반환값

_Blue_Sky_ 2024. 9. 22. 14:17
728x90
728x90

파이썬 함수 정의와 호출: 매개변수와 반환값 심층 분석

함수란 무엇인가?

함수는 특정 작업을 수행하는 코드 블록입니다. 마치 레시피와 같이, 함수는 주어진 입력값(재료)을 가지고 특정한 결과(요리)를 만들어냅니다. 파이썬에서 함수를 사용하면 코드의 재사용성을 높이고, 코드를 더욱 모듈화하여 가독성을 향상시킬 수 있습니다.

함수 정의하기

def 함수이름(매개변수1, 매개변수2, ...):
    # 함수의 실행 코드
    return 반환값
 
  • def: 함수를 정의하는 키워드입니다.
  • 함수이름: 함수를 식별하기 위한 고유한 이름입니다.
  • 매개변수: 함수에 전달되는 값을 받는 변수입니다. (선택 사항)
  • return: 함수의 결과값을 반환합니다. (선택 사항)

함수 호출하기

함수이름(인수1, 인수2, ...)
 
  • 함수이름: 정의된 함수의 이름입니다.
  • 인수: 함수에 실제로 전달되는 값입니다. 매개변수에 대응됩니다.

매개변수 (Parameter)

  • 매개변수는 함수가 정의될 때 함수 내부에서 사용될 변수를 미리 선언하는 것입니다. 함수를 호출할 때 실제 값(인수)이 전달되면 매개변수에 할당됩니다.
  • 매개변수의 종류:
    • 필수 매개변수: 함수 호출 시 반드시 전달해야 하는 매개변수입니다.
    • 선택 매개변수: 함수 호출 시 생략 가능한 매개변수입니다. 기본값을 지정할 수 있습니다.
    • 가변 매개변수: 임의의 개수의 인수를 받을 수 있는 매개변수입니다.
    • 키워드 매개변수: 매개변수의 이름과 함께 값을 전달하는 매개변수입니다.
    • 기본 매개변수: 매개변수에 기본값을 지정하여 함수 호출 시 값을 생략할 수 있도록 합니다.

반환값 (Return Value)

  • 반환값은 함수가 수행한 결과를 호출한 곳으로 돌려주는 값입니다.
  • return 문을 사용하여 반환값을 지정합니다.
  • 여러 개의 값을 반환하려면 튜플 형태로 반환합니다.
  • return 문을 만나면 함수의 실행이 종료됩니다.
728x90

예시

def greet(name):
    """사용자에게 인사를 하는 함수"""
    print(f"안녕하세요, {name}님!")

def add(a, b):
    """두 수를 더하는 함수"""
    return a + b

# 함수 호출
greet("코딩왕")
result = add(3, 5)
print(result)
 

함수의 장점

  • 코드 재사용: 동일한 코드를 여러 번 작성하지 않고 함수를 호출하여 사용할 수 있습니다.
  • 코드 모듈화: 복잡한 프로그램을 작은 함수 단위로 나누어 관리하기 쉽습니다.
  • 가독성 향상: 함수를 사용하면 코드의 논리적 흐름을 파악하기 쉽습니다.
  • 유지보수 용이: 함수 단위로 오류를 찾고 수정하기 쉽습니다.

좀 더 심층적인 내용

  • 람다 함수: 한 줄로 간단하게 표현되는 무명 함수입니다.
  • 재귀 함수: 자기 자신을 호출하는 함수입니다.
  • 함수 내부의 변수 범위: 지역 변수와 전역 변수의 차이를 이해해야 합니다.
  • 함수 문서화: docstring을 사용하여 함수의 기능을 설명합니다.
  • 고위 함수: 함수를 인자로 받거나 함수를 반환하는 함수입니다.

결론

파이썬 함수는 코드를 효율적으로 관리하고 재사용성을 높이는 데 필수적인 요소입니다. 매개변수와 반환값을 잘 이해하고 활용하여 더욱 강력한 파이썬 프로그램을 작성할 수 있습니다.

 

728x90
728x90