본문 바로가기
CS/Python

[python] positional argument 의 개념, 의미

by Warehaus 2021. 11. 17.

Overview


python 문서를 보다보면 positional argument 라는 단어를 많이 접하게 된다.  인자인 것은 알겠는데, 의미가 무엇인지 알아보자.

Positional arguments


Positional argument의 정의는 다음과 같다.

 

위치 인자 (positional argument): 키워드 인자가 아닌 인자. 위치 인자들은 인자 목록의 처음에 나오거나 이터러블 의 앞에 * 를 붙여 전달할 수 있다.

 

예를 들어, 다음과 같은 호출에서 3  5 는 모두 위치 인자다.
(출처 : python docs )

 

complex(3, 5)
complex(*(3, 5))

 

아래는 python3 의 용어집이다. 다른 용어들도 많으니 많은 도움이 될 것이라 생각한다.

 

https://docs.python.org/ko/3.6/glossary.html

 

용어집 — Python 3.6.15 문서

같은 형의 두 인자를 수반하는 연산이 일어나는 동안, 한 형의 인스턴스를 다른 형으로 묵시적으로 변환하는 것. 예를 들어, int(3.15) 는 실수를 정수 3 으로 변환한다. 하지만, 3+4.5 에서, 각 인자

docs.python.org


아래 명령어 예시를 한번 더 보자.

 

$ ./test_command -l ./mylog exec1 exec_arg1

 

test_command 라는 프로그램을 실행 한 경우이며, 인자는 총 4개를 받았다.

 

인자 (argument) : -l, ./mylog, exec1, exec_arg1

 

이렇게 전달 받은 인자 중 positional argument는 ./mylog, exec1, exec_arg1 이 되며, -l 은 keyword_argument 가 되는 것을 알 수 있다.

 

keyword_argument에 대해서는 다음 포스팅에서 진행 예정이다.

 

결론


오늘은 positional argument 에 대한 의미를 알아봤다.
Client command 를 만드는 경우  positional argument에 대한 언급이 잦은데, 어떤 의미를 가지고 있는지 이해했다면 업무를 수월하게 처리 할 수 있을 것이다.