일상적 이야기들.

argparse - 실행 인자 사용법. 본문

프로그래밍/PYTHON

argparse - 실행 인자 사용법.

noveljava 2020. 4. 1. 10:43

CLI 환경에서 프로그래밍을 하다보면, 실행 시에 전달을 해줘야하는 값들이 많이 존재하게 된다.

예를 들어서, 현재는 별로 사용되고 있지 않지만 windows 에서 종료를 위해서 예전에 많이 치던 showdown 명령어로 보자.

shutdown -f -s -t 3600

알파벳 앞에, - 기호가 붙은 것들이 option 이며 각각은 다음의 뜻을 가지고 있습니다.

  • f : 사용자에게 미리 경고하지 않음.
  • s : 컴퓨터가 종료 됨.
  • t : 종료될 시간을 지정.

이렇듯, 사용자에게 입력을 받아야하는 값들을 언제나 실행 후 입력을 받기에는 번거로움이 많다. 그렇기에 명령행 옵션을 사용할 수 있으며 python 에서는 argparse 라는 lib 으로 제공을 해주고 있다.

import argparse

parser = argparse.ArgumentParser(description='Process some integers.')
parser.add_argument('integers', metavar='N', type=int, nargs='+',
                    help='an integer for the accumulator')
parser.add_argument('--sum', dest='accumulate', action='store_const',
                    const=sum, default=max,
                    help='sum the integers (default: find the max)')

args = parser.parse_args()
  • add_argument : 실행 인자를 등록하는 함수.

위의 소스는, integers 로 숫자형 타입을 여러개를 입력받게 설정이 되었으며, --sum 이라는 옵션이 없으면 입력받은 숫자들 중에 가장 큰 값을 찾는다.

그리고, --sum 이라는 옵션이 있으면 입력받은 숫자들을 합쳐서 보여주게 된다.

출처 : https://docs.python.org/ko/3/library/argparse.html

'프로그래밍 > PYTHON' 카테고리의 다른 글

Mac - Bigsur 에서 pyenv 문제  (0) 2021.01.03
[TIL] Pytest - mock server 구축  (0) 2020.09.23
[TIL] vscode - organizeImports 설정  (0) 2020.09.17
[TIL] lambda, TeypVar  (0) 2020.09.10
[TIL] vscode - PEP8 관련 설정 잡기.  (0) 2020.09.09
Comments