from optparse import OptionParser
def main():
usage = "usage: %prog [options] arg"
parser = OptionParser(usage)
#先创建了一个类
parser.add_option("-f", "--file", dest="filename",
help="read data from FILENAME")
#上边的这句话的详细解释为:首先,我们可以使用 -f 或者 --file来传入一个参数变量,这个变量存在的目的是"read data from FILENAME",然后脚本接收到这个值之后,会存储到options.filename这个变量中让我们使用
parser.add_option("-v", "--verbose",action="store_true",dest="verbose",help="show some debug message")
#这句话的意思是说我们要传入一个-v 参数,这个参数是不需要后跟值的,只是表示打开或者关闭,这个-v打开的时候, -q就是不打开的,因为一个是安静模式,一个是显示模式,所以他俩存入了相同的变量options.verbose
parser.add_option("-q", "--quiet",action="store_false", dest="verbose",help="run quite")
#同上
#创建的类通过add_option来添加参数
(options, args) = parser.parse_args()
#上边这句就是用我们创建的类和已经添加的规则来处理命令行参数了
if len(args) != 1:
#这句话的意思是说,我们出来我们的-v -f a.txt 后便还要单独再跟一个参数(或多个)python help1.py -v -f abc.txt arg1 arg2(这个地方做了判断,只能传一个)
parser.error("incorrect number of arguments")
if options.verbose:
print "reading %s..." % options.filename
if __name__ == "__main__":
main()
</code>