您可以在 的单独部分中指定它们,__doc__
例如 -
Test Control Program
Usage:
test.py bitwrite ([--off=<bits>...][--on=<bits>...])
test.py regwrite ([regA | regB]<value>)
Options:
-o <bits>... --off <bits>... #Turn bits off
-i <bits>... --on <bits>... #Turns bits on
Arguments:
bits: 1 - on
0 - off
请注意Arguments
docopt 不是任何特殊名称,它只是任何名称,您可以使用任何您想要的适当名称。
在上面,该Arguments
部分将显示位和其他参数的有效值。
然后,当使用 --help 选项运行上述文档时,您将获得以下结果 -
>>>> python a.py --help
Test Control Program
Usage:
test.py bitwrite ([--off=<bits>...][--on=<bits>...])
test.py regwrite ([regA | regB]<value>)
Options:
-o <bits>... --off <bits>... #Turn bits off
-i <bits>... --on <bits>... #Turns bits on
Arguments:
bits: 1 - on
0 - off
如果您想在__doc__
不指定--help
or-h
选项的情况下显示完整,您可以在调用函数时捕获DocoptExit
异常并在那时docopt()
打印。__doc__
例子 -
"""Test Control Program
Usage:
test.py bitwrite ([--off=<bits>...][--on=<bits>...])
test.py regwrite ([regA | regB]<value>)
Options:
-o <bits>... --off <bits>... #Turn bits off
-i <bits>... --on <bits>... #Turns bits on
Arguments:
bits: 1 - on
0 - off
"""
from docopt import docopt, DocoptExit
if __name__ == '__main__':
try:
arguments = docopt(__doc__, version='Test Control Program')
print(arguments)
except DocoptExit:
print(__doc__)