为什么将参数解析为bool?

时间:2016-10-12 06:27:31

标签: docopt

我通常使用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部分不正确,但我无法理解原因。

2 个答案:

答案 0 :(得分:4)

这是因为dataTask(_:, _:)--url之间的空格太多,请尝试:

URL

答案 1 :(得分:0)

取自official documentation

  

要指定选项具有参数,请在一个空格或" ="之后添加一个描述该参数的单词;登录。

     

使用两个空格将选项与其非正式描述分开。