docopt位置参数不起作用

时间:2013-04-09 12:26:17

标签: python docopt

当关注docopt README时,我希望以下文件产生一些有效的输出:

#!/usr/bin/env python
"""Example file.

Usage:

  test_docopt.py test
  test_docopt.py (-h | --help)
  test_docopt.py --version

Options:
  -h --help                       Show this screen
  --version                       Show version.

"""

import pkg_resources
pkg_resources.require("docopt==0.6.1")
from docopt import docopt

if __name__ == '__main__':
    args = docopt(__doc__, version="Extend limb profiles 0.1")
    print(args)

但是,当我致电test_docopt.py时,我只会得到一个无意义的/空用法语句:

$ python test_docopt.py test
Usage:

我的两个问题是:

  • 为什么docopt显然无法识别 test 命令?
  • 为什么 Usage 模式没有填充实际使用模式?

1 个答案:

答案 0 :(得分:2)

您需要删除Usage:与使用情况之间的空行。来自README.rst

  

使用模式是doc的子字符串,以usage开头:(不区分大小写),以明显空行结束。

Usage:后面放一个空行,就可以在那里结束使用模式。