2024-05-14 23:11:54 发布
网友
我正在用docopt创建一个cli,有以下问题(我将从他们的示例cli中引入示例)
naval-fate --version或naval-fate -v将返回cli版本,但当尝试为不同的目的执行naval-fate ship -v时,它会自动返回与前两个命令相同的结果。你知道吗
naval-fate --version
naval-fate -v
naval-fate ship -v
有没有办法阻止docopt这样做?你知道吗
谢谢
您只需在docstring中自己将它作为一个选项提及,就可以阻止docopt将-v作为一个特殊选项进行解析。例如,假设您想使用-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运行脚本将生成字符串“A verbose message”
您只需在docstring中自己将它作为一个选项提及,就可以阻止docopt将
-v
作为一个特殊选项进行解析。例如,假设您想使用-v
表示详细性:在这种情况下,不带任何参数运行脚本将一事无成,而带
-v
运行脚本将生成字符串“A verbose message”相关问题 更多 >
编程相关推荐