python模块-optparse(解析命令行参数)

parser = OptionParser()
parser.add_option("-f", "--file", dest="filename",
                  help="write report to FILE", metavar="FILE")
parser.add_option("-q", "--quiet",
                  action="store_false", dest="verbose", default=True,
                  help="don't print status messages to stdout")
parser.add_option("-v", "--verbose",
                  action="store_true", dest="verbose", default=True,
                  help="make lots of noise [default]")
(options, args) = parser.parse_args()
print(options)
print(args)

运行结果:
{'filename': None, 'verbose': True}
[]

从命令行传入参数:

python模块-optparse(解析命令行参数)

 

 

用法说明:

optParser.parse_args() 剖析并返回一个字典(options)和列表(args);
字典中的关键字是我们所有的add_option()函数中的dest参数值,而对应的value值,是add_option()函数中的default的参数或者是由用户传入optParser.parse_args()的参数;
args,它是一个由 positional arguments 组成的列表。

 

action指示 optparse 当解析到一个命令行参数时该如何处理。默认store,介绍以下三种常用的

1.store:表示命令行参数的值保存在options对象中。如果我们对optParser.parse_args()函数传入的参数列表中带有‘-f’,那么就会将列表中‘-f’的下一个元素作为其dest的实参filename的值,他们两个参数形成一个字典中的一个元素{filename:out_file}。相反当我们的参数列表中没有‘-f’这个元素时,那么filename的值就会为空。

(2和3用于处理带命令行参数后面不带值的情况)

2.store_false 传入命令行参数中存在'-q' verbose将会返回False

3.store_true  传入命令行参数中存在'-v'  verbose将会返回True

 

参考:https://blog.csdn.net/m0_37717595/article/details/80603884

 

 

 

上一篇:调用支付宝接口完成下单流程(沙箱环境)


下一篇:Django用admin开发的产康中心进销存系统-3