Computer Programming/Python

[Python] 파이썬 함수의 매개변수 종류 (parameter)

해리팍 2020. 2. 10. 09:03
반응형

안녕하세요.

 

파이썬에서는 다음과 같은 방법으로 함수의 정의가 가능합니다.

 

def 함수명 (매개변수들) :

 

이번 포스팅에서는 파이썬 함수의 매개변수 종류에 대해 알아보려고 합니다.

 

총 4가지의 매개변수 종류가 있습니다.

 - 위치 매개 변수

 - 기본 매개 변수

 - 키워드 매개 변수

 - 가변 매개 변수 (튜플 형, 사전 형)

 

1. 위치 매개 변수

 

가장 기본적인 매개변수 입니다.

 

함수 호출 시 정해놓은 순서 그대로 매개변수를 입력 해야 합니다.

 

함수 정의 - def test(a, b, c):

 

함수 호출 - test(1, 2, 3)

 

순서와 개수가 처음 정의한 것 그대로 가야 합니다.

 

또한 위치 매개 변수와 다른 매개 변수를 함께 쓰실 때에는 위치 매개 변수를 제일 앞에 쓰셔야 합니다.

 

 

2. 기본 매개 변수 (Default 매개 변수)

 

함수 선언 시 매개 변수의 Default 값을 입력할 수 있습니다.

 

만약 함수 호출 시 해당 매개변수가 입력 되지 않았으면 Default로 설정한 값이 들어가게 됩니다.

 

만약 함수 호출 시 다른 값이 전달 된다면 해당 값으로 업데이트 됩니다.

 

함수 정의 : def test(a = 1, b = 2, c = 3)

 

함수 호출 1 : test() -> a : 1, b : 2, c : 3

 

함수 호출 2 : test(5, 4) -> a : 5, b : 4, c : 3

 

함수 호출 3 : test(5, 6, 7) -> a : 5, b : 6, c : 7

 

 

3. 키워드 매개 변수

 

함수 호출 시 키워드를 지정 하여 매개변수를 입력 하게 되면 순서가 바뀌어도 문제 없이 전달이 됩니다.

 

함수 정의 : def test(a, b, c)

 

함수 호출 : test(c=5, b=4, a=3)

 

 

4. 가변 매개 변수

 

가변 매개변수는 튜플형과 사전형 두가지로 구분이 됩니다.

 

4-1. 튜플형 가변 매개변수

 

튜플형은 매개변수 앞에 '*' 가 붙게 됩니다.

 

전달 시 튜플로 전달이 됩니다.

 

함수 정의 : def test(*args)

 

함수 호출 : test(1,2,3,4) -> args : (1, 2, 3, 4)

 

 

4-2. 사전형 가변 매개변수

 

사전형은 매개변수 앞에 '**' 가 붙게 됩니다.

 

전달 시 사전형으로 전달이 됩니다.

 

함수 정의 : def test(**args)

 

함수 호출 : test(a=1, b=2, c=3) -> args : {'a' : 1, 'b' : 2, 'c' : 3}

반응형