一些python程序需要在命令行执行,并接收参数,选项,optparse和argparse就是Python标准库提供的用于编写CLI执行的应用程序的工具。
optparse
适用范围:全部Python版本(Python2.6、Python3.0 ~ Python3.2只有optparse,2.7和3.3以上才有argparse)。
optparse已经不会有后续开发,所以应尽早迁移到argparse当中。
示例一:
|
|
示例二:带有选项的脚本
位置参数太多时候,信息并不直观,选项是一个很好的方案。并且:
- 可以设置为可选,默认值
- 选项可以设置名称,说明,提升可读性
- 多个选项可以任意顺序排列组合
选项有两种类型
- 开关(标记)如–verbose和–quiet,这种类型不需要接收值
- 参数赋值,如–host,–port等
|
|
另一个例子
|
|
短格式和长格式语法
短格式 值和选项可以紧挨着也可以有空格,并且可以把值包在引号内。
以下四种都是合法的。
长格式 选项和值之间必须有分隔符(空格或者等号)。
以下四种都是合法的。
位置参数
没有附加选项的参数均被认为是位置参数。
|
|
计数器
|
|
列表值
对同一个选项,接收多个值并以列表方式提供给脚本。