ArgParse

터미널에서 파일 실행할 때 인자 설정해주는 표준 라이브러리이다.

기본 사용법

import argparse -> Make parser -> Add argument -> Parse argument

## test.py ##

import argparse

parser = argparse.ArgumentParser(description='프로그램 설명')

parser.add_argument('arg1', help='이 인수의 설명(그 외 기타등등 아무거나)')
parser.add_argument('arg2', help='foooo', default='hi')
parser.add_argument('--arg3', type=int, default=5)
parser.add_argument('-a', '--arg4', action='store_true')
parser.add_argument('--arg5', required=True)

args = parser.parse_args()

print('arg1='+args.arg1)
print('arg2='+args.arg2)
print('arg3='+args.arg3)
print('arg4='+args.arg4)
print('arg5='+args.arg5)


필수 인수

인수명을 ‘arg1’이나 ‘arg2’처럼 하이픈 없이 지정하면 필수 인수가 된다. 필수 인수는 생략시 에러가 발생하며, 순서가 존재한다.

> python3 test.py
에러 발생

> python3 test.py 123 --arg5 1
123
hi
1

> python3 test.py 123 abc --arg5 1
123
abc
1


옵션 인수

인수명을 ‘-a’ 또는 ‘–aa’와 같이 하이픈 1개 또는 2개를 붙여 지정하면 옵션 인수가 된다. 단일 문자에 대해서는 하이픈을 1개 쓰고, 문자열에 대해서는 하이픈을 2개 사용한다. 옵션 인수는 생략 가능하며 순서가 존재하지 않는다. ‘–arg4’와 같이 별칭을 지정할 수 있지만, 프로그램 코드 내에서는 정식 명칭만 사용 가능하다. defualt 옵션으로 기본값을 줄 수 있으며, required에 True값을 주면, 옵션 인수이지만 생략이 불가하다.

> python3 test.py 0 0 --arg3 -a --arg5 q
0
0
5
True
q
args.arg4 # 가능
args.a # 불가능

댓글남기기