分类: Python/Ruby
2011-06-21 15:14:17
可以替代getopt的一个模块
from optparse import OptionParser
# 生成一个实例
parser = OptionParser(usage="%prog -f server.list -u root ... versrion 1",version="%prog 1")
parser.add_option("-f", "--file",dest="File",action="store",help="Host list")
# 保存了,可以通过 print options.filename
parser.add_option("-u", "--user",action="store", dest="User",help="Username")
# 没有指定dest参数,将用命令行的参数名来对options对象的值进行存取,这里就是User.
parser.add_option("-s", "--screen",action="store_true", dest="Screen",help="Output to the screen")
# store_true这个action的意思是只有在使用该参数的时候存,也就是你加了-s参数,才会保存。
(options, args) = parser.parse_args()
parse_args(): #解析命令行的参数, 并将结果传给options
返回两个值:
1. options , 这是一个对象(optpars.Values),保存命令行参数值。只要知道命令行参数名,如file,就可以访问其对应的值:options.file。
2. args , 一个由 positional arguments 组成的列表
ARGDIR = vars(options)
return ARGDIR
============================================
parser.add_option('-v', '–version', action='store_true', dest='version', default=False, help='show the version of this command')
#store_true这个action的意思是只有在使用该参数的时候存储, default则可以给一个默认值。也就是你加了-v 显示版本信息,否则不显示。