2016-09-26 2 views
2

내가 쓰고있는 프로그램에 대한 간단한 명령 행 옵션을 설정하기 위해 argparse를 사용하려고합니다. "-u"에 대한 오류가 왜 발생하는지 이해할 수 없습니다. 파이썬 2.7을 사용하고 있습니다. 아무도 내가 뭘 잘못하고 있는지 알아?Python argparse "unrecognized arguments"오류

코드 : main.py -s 172.17.0.3 -p 8591 -u "사용자"-c "패스"-r 68.2

import argparse 

parser = argparse.ArgumentParser() 
parser.add_argument("-s", "--server", help="ip address of the server") 
parser.add_argument("-p", "--port", help="port number of the server") 
parser.add_argument("-u", "--user", help="username") 
parser.add_argument("-c", "--pass", help="authentication credentials") 
parser.add_argument("-r", "--record", help="port number of the server") 
args = parser.parse_args() 

출력 : 사용 :의 main.py [-h] [ -s 서버] [PORT -p] [-u 사용자] [-c PASS] [RECORD -r] main.py : 오류 : 알 수없는 인수 : U 사용자

Process finished with exit code 2 

답변

3

는 주요 통화 .py에서 사용자 (-u "user")에 전달중인 인수를 확인하십시오.

하이픈 (-) 대신 en 대시 (-)를 사용하고 있습니다. 이들은 다른 문자입니다.

http://www.thepunctuationguide.com/en-dash.html

+2

또한, 영업 이익은 대신 직선 따옴표의 user''주위 곱슬 따옴표를 사용하고 있습니다. – MattDMo

관련 문제