Docopt 是一个命令行接口说明模块。它可以帮助您定义命令行应用程序的接口并为其生成解析器。 docopt 中的接口消息是形式化的帮助消息。
安装
您可以通过多种方式安装 docopt 模块,pip 是安装 docopt 的最佳方式之一。
$pip install docopt
注意: 文档也使用 Python 2.5、2.6、2.7、3.2、3.3 和 PyPy 进行了测试。
初始化
docopt 最常用于显示帮助消息,并通过 -h 或 -help 选项调用。您可以使用以下命令导入并调用该模块。
from docopt import docopt
docopt(doc, argv = None, version = None,
help = True, options = False)
模块参数如下图所示:
- doc : 它是一个包含帮助消息的文档字符串 (__doc__)。
- argv : 它是一个可选参数向量,包含字符串列表。
- version : 它是一个可选参数,提及程序的版本。
- help : 负责显示帮助消息。默认情况下为 True。
- options_first:这不允许混合位置参数和可选参数。默认情况下为 False。
使用模式
docopt 使您可以对帮助页面进行强有力的控制,它由不区分大小写的 use 关键字组成,后面跟着 program_name。使用模式可以用下面提到的各种元素来说明:
usage =
'''
Usage :
program_name.py command --option
program_name.py [optional argument]
program_name.py --another-option =<argument>
program_name.py (--option1 | --option2 )
program_name.py <argument>...
'''
<argument>argument:以“<”开始并以“>”结束的元素称为位置参数。它对位置敏感。
-选项-o:以“-”或“-”开头的元素称为长选项或短选项。它可以被称为--option
或者-o
.
-h, --help Display help -o, --option Display options -l, --all List all -q, --quit exit --version Version 3.6.1
[可选参数]:以“[”开头并以“]”结尾的元素称为可选参数。它被认为是可选的。
<参数>...:当左侧的元素可以重复多次时,使用省略号“…”。
(必需的参数):以“(” 开头并以“)” 结尾的元素是必需元素。(--option1 | --option2)
表示需要 -option1 或 -option2 之一。
例子:
# filename ='docopt_example.py"
usage ='''
Usage:
docopt_example.py [(<name1>|<name2>)] <name3>...
docopt_example.py mov <name1> <name2>
docopt_example.py (--h|--q) [<name1> -l]
docopt_example.py --version
Options:
-l, --all List all.
-q, --quit exit.
--version Version 3.6.1
-h --help Show this screen.
--version Show version.
--speed =<kn> Speed in knots [default: 10].
--moored Moored (anchored) mine.
--drifting Drifting mine.
'''
from docopt import docopt
args = docopt(usage)
print(args)
输出:
相关用法
- Python Dora用法及代码示例
- Python Dictionary clear()用法及代码示例
- Python Dictionary copy()用法及代码示例
- Python Dictionary fromkeys()用法及代码示例
- Python Dictionary get()用法及代码示例
- Python Dictionary items()用法及代码示例
- Python Dictionary keys()用法及代码示例
- Python Dictionary popitem()用法及代码示例
- Python Dictionary setdefault()用法及代码示例
- Python Dictionary pop()用法及代码示例
- Python Dictionary values()用法及代码示例
- Python Dictionary update()用法及代码示例
- Python Decimal same_quantum()用法及代码示例
- Python Decimal scaleb()用法及代码示例
- Python Decimal shift()用法及代码示例
- Python Decimal sqrt()用法及代码示例
- Python Decimal to_eng_string()用法及代码示例
- Python Decimal to_integral_exact()用法及代码示例
- Python Dictionary has_key()用法及代码示例
- Python Decimal adjusted()用法及代码示例
- Python Decimal as_tuple()用法及代码示例
- Python Decimal canonical()用法及代码示例
- Python Decimal compare()用法及代码示例
- Python Decimal compare_signal()用法及代码示例
- Python Decimal compare_total()用法及代码示例
注:本文由纯净天空筛选整理自soniyanagaraj30大神的英文原创作品 Docopt module in Python。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。