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

Posted 爱打盹的猫猫

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了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}
[]

从命令行传入参数:

 

 

用法说明:

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

 

 

 

以上是关于python模块-optparse(解析命令行参数)的主要内容,如果未能解决你的问题,请参考以下文章

python optparse命令解析模块

python OptParse模块的用法详解

python中optparse模块用法

argparse - 命令行选项与参数解析

命令行之参数解析 optparse模块的运用

python optparse模块学习