python处理命令行参数.pdf

python处理命令行参数.pdf

ID:51490213

大小:219.46 KB

页数:7页

时间:2020-03-25

python处理命令行参数.pdf_第1页
python处理命令行参数.pdf_第2页
python处理命令行参数.pdf_第3页
python处理命令行参数.pdf_第4页
python处理命令行参数.pdf_第5页
资源描述:

《python处理命令行参数.pdf》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、Python有两个内建的模块用于处理命令行参数,一个是getopt,《Deepinpython》一书中也有提到,只能简单处理命令行参数;另一个是optparse,它功能强大,而且易于使用,可以方便地生成标准的、符合Unix/Posix规范的命令行说明。示例下面是一个使用optparse的简单示例:fromoptparseimportOptionParser[...]parser=OptionParser()parser.add_option("-f","--file",dest="filename",help="write

2、reporttoFILE",metavar="FILE")parser.add_option("-q","--quiet",action="store_false",dest="verbose",default=True,help="don'tprintstatusmessagestostdout")(options,args)=parser.parse_args()现在,?就可以在命令行下输入:--file=outfile-q-foutfile--quiet

3、ipt>--quiet--fileoutfile-q-foutfile-qfoutfile上面这些命令是相同效果的。除此之外,optparse还为我们自动生成命令行的帮助信息:-h--help输出:usage:[options]options:-h,--helpshowthishelpmessageandexit-fFILE,--file=FILEwritereporttoFILE-q,--quietdo

4、n'tprintstatusmessagestostdout简单流程首先,必须importOptionParser类,创建一个OptionParser对象:fromoptparseimportOptionParser[...]parser=OptionParser()然后,使用add_option来定义命令行参数:parser.add_option(opt_str,...,attr=value,...)每个命令行参数就是由参数名字符串和参数属性组成的。如-f或者?file分别是长短参数名:parser.add_option

5、("-f","--file",...)最后,一旦你已经定义好了所有的命令行参数,调用parse_args()来解析程序的命令行:(options,args)=parser.parse_args()注:你也可以传递一个命令行参数列表到parse_args();否则,默认使用sys.argv[:1]。parse_args()返回的两个值:*options,它是一个对象(optpars.Values),保存有命令行参数值。只要知道命令行参数名,如file,就可以访问其对应的值:options.file。*args,它是一个由po

6、sitionalarguments组成的列表。Actionsaction是parse_args()方法的参数之一,它指示optparse当解析到一个命令行参数时该如何处理。actions有一组固定的值可供选择,默认是’store‘,表示将命令行参数值保存在options对象里。示例parser.add_option("-f","--file",action="store",type="string",dest="filename")args=["-f","foo.txt"](options,args)=parser.par

7、se_args(args)printoptions.filename最后将会打印出“foo.txt”。当optparse解析到’-f’,会继续解析后面的’foo.txt’,然后将’foo.txt’保存到options.filename里。当调用parser.args()后,options.filename的值就为’foo.txt’。你也可以指定add_option()方法中type参数为其它值,如int或者float等等:parser.add_option("-n",type="int",dest="num")默认地,ty

8、pe为’string’。也正如上面所示,长参数名也是可选的。其实,dest参数也是可选的。如果没有指定dest参数,将用命令行的参数名来对options对象的值进行存取。store也有其它的两种形式:store_true和store_false,用于处理带命令行参数后面不带值的情况。如-v,-q等命令行

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。