Python argparse“无法识别的参数”错误
问题描述:
我想使用argparse为我正在编写的程序设置一些简单的命令行选项。我不明白为什么我得到“-u”的错误。我正在使用Python 2.7。有谁知道我做错了什么?Python argparse“无法识别的参数”错误
代码: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 SERVER] [-p PORT] [-u USER] [-c PASS] [-r RECORD] main.py:错误:无法识别的参数:U用户
Process finished with exit code 2
答
当你调用主.py,检查你传递给用户的参数(-u“user”)。
您正在使用连字符( - )而不是连字符( - )。这些是不同的字符。
此外,OP使用'user'周围的曲线引号而不是直引号。 – MattDMo