gpt4 book ai didi

python - docopt 的选项多样性

转载 作者:太空狗 更新时间:2023-10-30 02:04:41 26 4
gpt4 key购买 nike

我想使用 docopt 来解析可以多次接收相同选项的命令行。有人可以解释一下该怎么做吗?

一个测试例子:

#!/usr/bin/env python

"""
Test program.

Usage:
test.py -v

Options:
-v Flag that should be counted
"""

import docopt
print docopt.docopt(__doc__)

如果我用 test.py -v 运行它,我得到:

{'-v': True}

就好像我用 test.py -vv 运行它一样,它会显示用法消息(表明命令行无效)。

我想调整选项文档,以便 docopt 返回我:

{'-v': 1}

当只传递了 1 个 -v 并且:

{'-v': 3}

比方说,如果用户传递了 -vvv。这几乎是相同的功能 the count action in argparse .

最佳答案

在挖掘 docopt(已关闭)问题列表后,I have found that the right way to represent this会是:

#!/usr/bin/env python

"""
Test program.

Usage:
test.py (-v ...)

Options:
-v Flag that should be counted
"""

import docopt
print docopt.docopt(__doc__)

也就是说,必须使用符号“...”来表示一个选项可能会出现多次。在这种情况下,选项将被正确计算。如果用 test.py -vvv 调用上面的程序,它将正确打印:


{'-v': 3}

符号“...”也可以与参数和选项一起使用,参数和选项采用几乎相同的方式获取参数,只需点击上面的链接即可获取示例。

关于python - docopt 的选项多样性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18468123/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com