Python argparse“无法识别的参数”错误

时间:2016-09-26 21:52:23

标签: python-2.7

我正在尝试使用argparse为我正在编写的程序设置一些简单的命令行选项。我不明白为什么我收到“-u”的错误。我使用的是Python 2.7。有谁知道我做错了什么?

代码:main.py -s 172.17.0.3 -p 8591 -u“user”-c“pass”-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 SERVER] [-p PORT] [-u USER] [-c PASS] [-r RECORD]     main.py:错误:无法识别的参数: u user

Process finished with exit code 2

1 个答案:

答案 0 :(得分:3)

当您调用main.py时,请检查您为用户传递的参数(-u“user”)。

您正在使用短划线( - )而不是连字符( - )。这些是不同的字符。

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