官网链接:https://docs.python.org/3/library/optparse.html

 https://docs.python.org/2/library/argparse.html

from optparse import OptionParser
parser = OptionParser()
parser.add_option("-f", "--file", dest="filename",
                  help="write report to FILE", metavar="FILE")
(options, args) = parser.parse_args()
print(options,type(options),args,type(args))   #print(type([]))  结果:<class 'list'>

options,是个类,dest是键值对里的键,值是None,args是列表,空

没传参的时候
python命令行传参详解,optparse模块OptionParse类的学习

 -f 空格指定字符串,会将它作为dest里filename的值,

python命令行传参详解,optparse模块OptionParse类的学习

 我再加一个短横线,结果还是可以的  --f

python命令行传参详解,optparse模块OptionParse类的学习

 使用--file 也可以

python命令行传参详解,optparse模块OptionParse类的学习

 其它字符串,不在--file后的那个,无论在它前面还是后面,都加进了args列表里。

python命令行传参详解,optparse模块OptionParse类的学习

临时给程序加个-m

python命令行传参详解,optparse模块OptionParse类的学习

 也是可以用的

python命令行传参详解,optparse模块OptionParse类的学习

 后面再用这个的,被覆盖掉了

python命令行传参详解,optparse模块OptionParse类的学习

 代码现在如下,调用它的值

python命令行传参详解,optparse模块OptionParse类的学习

 调用它的值,点来调用

python命令行传参详解,optparse模块OptionParse类的学习

from optparse import OptionParser
parser = OptionParser()
parser.add_option("-f", "--file", dest="filename",
                  help="write report to FILE", metavar="FILE")
(options, args) = parser.parse_args()
with open('%s'%options.filename,mode='w',encoding='utf-8') as f:
    f.write('我是小马过河')
if "mcw" in args:
    print('欢迎mcw',args)

  这样就可以指定文件做操作,传参中有啥参数也可以做对应参数了。

python命令行传参详解,optparse模块OptionParse类的学习

 python命令行传参详解,optparse模块OptionParse类的学习

-h或者--help可以查看帮助信息,指定参数的介绍信息

 python命令行传参详解,optparse模块OptionParse类的学习

 添加-q参数,多了一组键值对,命令行加上-q值是假,不加也就是默认是真。(自解:可用于某个功能或其它是否开启或其他并给出默认状态)

from optparse import OptionParser
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")
(options, args) = parser.parse_args()
print(options,args)
代码

相关文章: