我刚刚开始使用 docopt ,并且我正在尝试编写一个使用命令,如果命令匹配某些内容,该命令将接受一个或多个可选参数。这是当前状态:
Usage:
script.py voucher (add|del) <code> <credits> [<points>]
这里,首先使用voucher
命令,然后使用add
或del
。我想更改该行,以便如果使用 add
,则 code
和 credits
参数都是必需的,但 points
是可选的。
但是,如果使用 del
,则只需要 code
参数。
我怎样才能做到这一点?
最佳答案
"""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)
满足您的需要。
关于python - 如果满足条件,如何使参数可选?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12766628/