명령 행 인수에 옵션 플래그를 어떻게 추가합니까?
예. 그래서 쓸 수 있습니다
python myprog.py
또는
python myprog.py -w
나는 시도했다
parser.add_argument('-w')
하지만 오류 메시지가 나타납니다.
Usage [-w W]
error: argument -w: expected one argument
내가 취하는 것은 -w 옵션에 인수 값을 원한다는 것을 의미합니다. 깃발을 받아들이는 방법은 무엇입니까?
이 질문에 대해 http://docs.python.org/library/argparse.html 이 불투명 하다는 것을 알았습니다 .
답변
당신이 그것을 가지고 있듯이, 인수 w는 명령 줄에서 -w 뒤에 값을 기대합니다. 그냥 변수를 설정하여 스위치를 플립하고자하는 경우 True
나 False
, 한 번 봐 가지고 http://docs.python.org/dev/library/argparse.html#action (특히 store_true 및 store_false를)
import argparse
parser = argparse.ArgumentParser()
parser.add_argument('-w', action='store_true')
여기서 action='store_true'
의미합니다 default=False
.
반대로, 당신은 할 수 action='store_false'
의미있는 default=True
.
답변
실행할 준비가되도록 빠른 스 니펫 추가 :
출처 : myparser.py
import argparse
parser = argparse.ArgumentParser(description="Flip a switch by setting a flag")
parser.add_argument('-w', action='store_true')
args = parser.parse_args()
print args.w
용법:
python myparser.py -w
>> True
답변
다음과 같은 빠른 방법이 있습니다 sys
. .. 이외의 기능은 필요하지 않습니다 .
flag = "--flag" in sys.argv[1:]
[1:]
전체 파일 이름이 --flag