首页 > 编程语言 > 详细

python命令行工具argparse

时间:2015-11-20 01:33:58      阅读:334      评论:0      收藏:0      [点我收藏+]

argparse是python标准库的一个命令行解析工具

下面通过一些代码来边操作边学习

import argparse
parse = argparse.ArgumentParser()
parse.parse_args()

执行后得到的结果

技术分享

从结果可以看出有些参数是默认存在的 可以找到,有些是不存在,

如果我们想加入一个自定义的的参数可以使用下面的代码

技术分享

运行后 会有下面的结果

技术分享

从结果可以知道,这个参数是positional类型的 这个参数是必须赋值的,否则会报错

如果想要optional 类型的参数 可以用下边的代码

技术分享

执行后的结果

技术分享

这样的参数 也是需要传值的, 

如果想要有默认值 可以使用default例如上面的程序可以写成

import argparse
parse = argparse.ArgumentParser()
parse.add_argument("-verbosity",default = 1,type = int)
args = parser.parse_args()
if args.verbosity:
    print "verbosity turned on"

 

其中的type是参数的类型,默认地,type 为’string’。也正如上面所示,长参数名也是可选的。

如果参数是固定的true或者false可以使用aciton属性

parse.add_argument("--verbosity", action="store_true",dest=‘verbosity‘)

parse.add_argument("--p",action="store_false",dest=‘p‘);

action 是指示 argparse 当解析到一个命令行参数时该如何处理。actions 有一组固定的值可供选择,默认是’store ‘,表示将命令行参数值保存在  对象里。

这样的话 当解析到parse.verbosity时时true,当解析到parse.p时是false 其中,dest 参数也是可选的。如果没有指定 dest 参数,将用命令行的参数名来对  对象的值进行存取。

 

 

python命令行工具argparse

原文:http://www.cnblogs.com/yichangTech/p/4979494.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!