optparse 模块用于处理命令行参数,功能强大,而且易于使用,可以方便地生成标准的、符合Unix/Posix规范的命令行说明。
简单流程:
首先,必须导入模块 import OptionParser 类,创建一个OptionParser对象:
from optparser import Optionparser
····
parser = OptionParser()
然后,使用add_option来定义命令行参数:
parser.add_option("-D","--Database",action="store",type="string",dest="database",help="Please input test databases")
每个命令行参数就是有参数名字字符串 和参数属性组成。
最后
一旦定义好所有命令行参数,调用parse_args()来解析程序的命令行。
(options, args) = parser.parse_args()
parse_args()返回的两个值:
options, 是一个对象(optpars.Values)保存有命令行参数值。只要知道命令行参数名。如file 就可以访问其对应的值:options.file。
args 是一个由positional arguments组成的列表。
add_option中最重要的四个option属性是;action,type,dest,help.这四个中action是最基础的
action 参数
action参数告诉 optparse该做什么 当它在命令行中遇到选项是。action有三种存储方式: store store_false store_true 。如果不指定action的值,默认是store,它告诉optparse将继续读取下一个参数(type)。
type参数
默认是string 也可以是其他的Int和 float等
dest参数
dest 的值将作为parser的属性被存储
parser.add_option("-f", "--file",action="store", type="string", dest="filename")
当调用options.filename时其实就是命令行接收到 文件名的值。
default 参数
设置默认值之后,当从命令行没有接收到参数的是选取默认值。
help 参数
对定义的命令参数做一个解释。提供给使用者一个帮助信息,能够让使用者更加明白你这个参数的用法,具体是做什么的。
例子:
from optparse import OptionParser
parser =OptionParser()
parser.add_option("-D", "--Database", action="store",type="string",dest="database",help="Please input test databases")
parser.add_option("-T", "--Table",action="store",type="string",dest="table",help="Please input test table")
parser.add_option("-C", "--Column",action="store",type="string",dest="column",help="Please input test column")
parser.add_option("-U" ,"--Url", action="store",type="string",dest="url",help="Please input test url")
(options,args) = parser.parse_args()
当没有接收到命令行参数 或者命令行参数不正确的时候,或者使用 -h --help参数时打印出帮助信息