2

我刚从docopt开始,我正在尝试编写一个使用命令,如果该命令匹配某些东西,它将接受一个或多个可选参数。这是它的当前状态:

Usage:
  script.py voucher (add|del) <code> <credits> [<points>]

在这里,首先使用voucher命令,然后使用addor del。我想更改该行,以便如果add使用,则 thecodecreditsarguments 都是必需的,但是points是可选的。

但是,如果del改为使用,则只code需要参数。

我怎么能做到这一点?

4

1 回答 1

3
"""S.O. 12766628

Usage:
    script.py voucher add <code> <credits> [<points>]
    script.py voucher del <code>
"""
from docopt import docopt


if __name__ == '__main__':
    arguments = docopt(__doc__, version='S.O. 12766628')
    print(arguments)

做你需要的。

于 2012-10-07T06:42:17.663 回答