코딩의 함수에는 매개변수(parameter)와 인수(argument)가 있습니다.
매개변수(parameter)와 인수(argument)
도대체 매개변수 (parameter)와 인수(argument)는 무엇일까요?
매개변수와 인수에 대한 개념이 정립되지 않았다는 것은 아직 코딩의 입문자라는 이야기라서
코딩의 함수가 아닌 여러분에게 조금이라도 친숙한 수학의 함수를 살펴 보겠습니다.
다음과 같은 수학 문제가 있습니다.
f(x, y) : 2x + y 일 때 f(2,1)의 값은?
여러분은 어렵지 않게 이 문제를 풀어낼 수 있을 것입니다.
x자리에 2를 넣고 y 자리에 1을 넣어서 5라는 정답을 도출할 것입니다.
이 때 함수에 값을 입력받기 위해 만들어 둔 x와 y가 매개변수(parameter)이며 실제 매개변수에 입력되는 값인 2와 1이 인수(argument)입니다.
수학의 함수를 사용해 실제 값을 도출할 때는 함수 f에 매개변수는 생략하고 인수만 입력해 f(2, 1)로 표기했습니다. 다만 코딩에서는 매개변수(parameter)와 인수(argument)를 동시에 표기할 때가 많습니다.
마찬가지로 엑셀의 함수에서도 매개변수와 인수가 있습니다. vlookup에서도 확인이 가능합니다.
코딩에서는 매개변수와 인수를 함께 함수에 입력하는 이유
수학의 함수와 엑셀 모두 인수만 함수에 입력하는데
코딩에서는 매개변수와 인수를 함께 함수에 입력하는 이유가 뭘까요?
매개변수(parameter)없이 인수만을 입력하면 순서를 엄격히 따라야 한다는 단점이 존재합니다.
위 수학의 함수 f(x, y)의 경우에도 인수만 입력하기에 반드시 x를 먼저 함수에 입력해야 합니다.
매개변수를 인수와 함께 입력하면 순서에 구애받지 않습니다.
함수 f의 경우에는 매개변수가 몇개 되지 않아 특별한 장점으로 보이지 않겠지만, 판다스의 함수는 매개변수가 30개 정도인 경우도 있으므로 순서를 엄밀히 지켜가며 사용할 수 없습니다. 그렇기에 매개변수와 인수를 함께 입력하는 것입니다.
반대로 말하면 매개변수를 생략할 수 있는 함수들은 대부분 매개변수가 몇개 되지 않습니다.
참고로 파이썬도 매개변수의 순서에 맞게 인수를 입력하면 매개변수는 생략이 가능합니다.
아래는 판다스에서 엑셀파일을 불러오는 코드입니다.
pd.read_excel(io='파일명.xlsx', sheet_name=1)
매개변수 io에는 파일의 경로명을 인수로 입력하고, 매개변수 sheet_name에는 불러올 시트의 로케이션이나 이름을 입력합니다.
이 때 pd.read_excel 함수의 첫번째 매개변수가 io, 두번째 매개변수가 sheet_name이므로
아래처럼 매개변수를 생략하고 인수만 순서대로 입력해서 사용할 수 있습니다.
pd.read_excel('파일명.xlsx', 1)
코딩 특히 파이썬에서는 함수의 매개변수(parameter)가 많고 그 모든 매개변수를 함수를 쓸 때 마다 모두 사용하지 않으므로, 일부만 매개변수와 인수를 함께 기입하고 나머지는 기본값(default)으로 쓰게 됩니다.
교보문고 구매 페이지, 알라딘 구매 페이지, yes24 구매 페이지
유튜브에서 판다스 강의중입니다.
https://www.youtube.com/@KimPandas/videos
'여러 가지 이야기 > 코딩 개념 설명' 카테고리의 다른 글
python 함수에서 특별한 매개변수 사용법 (0) | 2024.10.15 |
---|---|
[python] 여러 개의 변수를 반복문으로 생성하는 방법 (0) | 2023.09.05 |