Docopt 将任何 -v 解释为版本



我正在使用docopt创建一个cli,并遇到以下问题(我将从他们的naval_fate示例cli中引入示例)

naval-fate --versionnaval-fate -v将返回 cli 版本,但是当尝试出于不同目的执行naval-fate ship -v时,它会自动返回与前两个命令相同的结果。

有没有办法阻止docopt这样做?

谢谢

您可以防止 docopt 将-v解析为特殊选项,只需在文档字符串中自己提及即可。例如,假设您想将-v用于详细程度:

!/usr/bin/python
"""
Usage: ./ [options]
Options:
-v  show verbose printing
"""
from docopt import docopt
arguments = docopt(__doc__)
if arguments["-v"] == True:
print "A verbose message"

在这种情况下,运行不带参数的脚本将不执行任何操作,而使用-v运行脚本将生成字符串"详细消息">

相关内容

  • 没有找到相关文章

最新更新