2017-03-28 11 views
0

argsparse에서 인수가 선택되었는지 확인하고 싶습니다. 해당 변수에 대해 임의의 값을 선택하고 싶습니다. 여기Python - arparse에서 arg가 선택되었는지 확인하십시오.

은 예입니다

parser.add_argument('--tempo', default=120, type=int, help='Tempo of the track') 

그 한 가지 방법은, 예를 들면 :

args = parser.parse_args()  
if args.tempo==120: #my default int 
    tempo=random.randint(60,350) 

그러나 사용자가 예를 들어 내 프로그램을 호출하고 싶은 그런 식 : main.py --tempo 120, 그것은 또한 임의의 값을 선택합니다. 논쟁이 선택되었는지 아닌지 어떻게 확인할 수 있습니까?

답변

1

문제는 테스트 중입니다. 사용자가 120을 선택한 경우 임의 번호가 부여됩니다. 기본값을 제거하고 비어 있는지 확인하는 것이 가장 좋습니다.

parser.add_argument('--tempo', default=None, type=int, help='Tempo of the track') 
args = parser.parse_args()  
if args.tempo==None: #my default int 
    args.tempo=randint(60,350) 
+0

args.tempo is None은 가장 신뢰할 수있는 테스트입니다. – hpaulj