본문 바로가기
Python

[Python] 함수의 인수, 매개변수, 반환값

by 박사과정 모닝 2023. 10. 10.
반응형

1. 인수(arguments)와 매개변수(parameter)의 차이점

  • 인수(arguments): 호출 프로그램에 의해 함수에 실제로 전달되는 '값'
  • 매개변수(parameter): 이 값을 전달받는 '변수'
  • 따라서 함수가 호출될 때 마다 인수는 달라질 수 있음
  • 매개변수의 개수에 맞춰 정확한 개수의 인수를 함수에 전달해야 함

 

2. 반환값(return value)

  • 함수가 호출한 곳으로 반환하는 작업의 결과값
  • 수식의 계산 값을 변환하려면 return 문장 다음에 수식을 써주면 됨
  • 파이썬에서는 함수가 값을 반환하지 않으면 None이라는 특별한 값을 반환함. 'None은 어떤 객체도 참조하지 않는다'는 의미
  • 그렇다면 반환값을 꼭 반환해야 할까? 아래의 경우와 같이 값을 반환하지 않는 함수도 있다.
def printname(name):
    print('이름: ', name)
    return

 

3. 디폴트 인수(default argument)

  • 함수 선언 시 매개변수에 기본값을 설정할 수 있음
def printrect(width, height=10):
    print('너비: ', width)
    print('높이: ', height)
    return
  • 위와 같이 설정하면, 함수 호출 시 height 값을 입력하지 않아도 height라는 매개변수에 기본값인 10이 입력된다.

 

4. 키워드 인수(keyword argument)

  • 파이썬에서 대부분의 인수들은 함수 호출 시에 위치에 의해 구별됨
  • 그러나 키워드 인수는 인수들 앞에 키워드를 두어 인수들을 직접 구분함
def sumAll(x, y, z):
    print('x: ', x)
    print('y: ', y)
    print('z: ', z)
    print('sum: ', x+y+z)
    return x+y+z
  • 위와 같이 정의된 함수를 다음과 같이 세 가지 방법으로 호출한 결과는 같다.
sumAll(10, 20, 30)
sumAll(x=10,y=20,z=30)
sumAll(z=30,x=10,y=20)
반응형