argparse에서 선택적 위치 정수 인수를 정의 할 수 있습니다. 예를 들어, 사용,
import argparse
parser = argparse.ArgumentParser()
parser.add_argument('limit', type=int, nargs='?')
args = parser.parse_args()
if args.limit is not None:
print "Limiting to %d." % -args.limit
기본 도움말 텍스트는이 경우 합리적인 아니라, add_argument
에 metavar
키워드 인수를 조정할 수 있습니다 : 음의 값은 다음 옵션을 제공처럼 사용자에게 보일 것 "-n"
.
필자는 optparse를 사용하여이 작업을 수행하는 대신 불쾌한 방법을 제안 할 수 있습니다. 내가 좋겠 또한 0 요구 사항이 고려되어야할지에 대해 생각 최대 9까지 모든 숫자에 대한 등등
from optparse import OptionParser
parser = OptionParser()
parser.add_option("-1")
parser.add_option("-2")
options,args = parser.parse_args()
if options.__dict__["1"] is not None:
print "Your number was %d." % (int("1"+options.__dict__["1"]))
elif options.__dict__["2"] is not None:
print "Your number was %d." % (int("2"+options.__dict__["2"]))
및 ...
: 기본적으로 수를 시작할 수 있습니다 각 숫자에 대한 개별 옵션을 정의 대신 argparse를 살펴 보는 것이 좋습니다. 'argparse'에 대해서 +1 –
+1이 가능합니다. 'optparse'에서 이것을하기 위해서는 커스텀'Option' 클래스와 커스텀'OptionParser' 클래스가 필요합니다. 그렇더라도 옵션 클러스터를이 "베어"옵션과 구별하는 것은 까다 롭습니다 (예를 들어,'myapp.py list -10'는'myapp.py list -1 -0' (optparse의 기본값) 또는'-10'을 의미합니까? – Lemur
). 의견을 주셔서 감사합니다, 내가 어떻게 argparse와 함께 달성 할 수 있습니까? – vinilios