我正在尝试使用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
答案 0 :(得分:3)
当您调用main.py时,请检查您为用户传递的参数(-u“user”)。
您正在使用短划线( - )而不是连字符( - )。这些是不同的字符。