我通常使用docopt
来处理命令行参数,但我现在有一个案例,其中参数被意外解析(它一定是我的一个愚蠢的错误,因为它总是很好用)
"""
API to do something
Usage:
api.py [options]
Options:
--port PORT port to listen on [default: 64645]
--url URL elasticsearch address [default: http://elk.example.com:9200]
"""
这是通过conf = docopt.docopt(__doc__)
来解析的,之后我将conf
设置为
{
'--port': '64645',
'--url': False
}
--url
部分不正确,但我无法理解原因。
答案 0 :(得分:4)
这是因为dataTask(_:, _:)
和--url
之间的空格太多,请尝试:
URL
答案 1 :(得分:0)
要指定选项具有参数,请在一个空格或" ="之后添加一个描述该参数的单词;登录。
使用两个空格将选项与其非正式描述分开。