Programing

인수가없는 Python Argparse 명령 행 플래그

lottogame 2020. 3. 19. 08:16
반응형

인수가없는 Python Argparse 명령 행 플래그


명령 행 인수에 옵션 플래그를 어떻게 추가합니까?

예. 그래서 쓸 수 있습니다

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 뒤에 값을 기대하고 있습니다. 그냥 변수를 설정하여 스위치를 플립하고자하는 경우 TrueFalse, 한 번 봐 가지고 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')

편집 : Sven이 지적 했듯이이 경우 기본값은 불필요합니다.


실행할 준비가되도록 빠른 스 니펫 추가 :

출처 : 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

참고 URL : https://stackoverflow.com/questions/8259001/python-argparse-command-line-flags-without-arguments

반응형