argparse是argument(参数)和parser(解析器)的缩写
argparse模块是向.py文件传递参数。如果你想直接运行.py文件,同时向文件中传递参数,就要使用这个模块。
使用这个模块的步骤分以下几步:
1 引入模块
import argparse
2 创建解析对象parser
parser = argparse.ArgumentParser()
3 向对象中添加参数
parser.add_argument(name or flag, nargs= , action= ,type= ,default= ,help= )
name 参数名,分固定参数和可选参数,如add_argument(‘-d‘)表示参数-d是可选的(使用时可以传入也可以不传入参数)
nargs 参数的个数,*表示0到多个,?表示只有一个,+表示至少一个,也可以是数字直接指定参数个数
type 参数类型,默认是string,可以指定为int,float,file
default 设置参数的默认值
help 帮助信息,用来自己设定参数的帮助信息,使用python arg.py --help查看,arg.py为文件名,--help默认是自带的
例如:parser.add_argument(‘a‘, nargs=‘?‘ type=int, default=10, help="a is typeof int")
4 调用parse_args()方法进行解析,然后就可以直接使用
arg = parser.parse_args()
5 使用参数
arg.a
6 文件保存为arg.py,运行文件python arg.py 12
实例:
import argparse
parser = argparse.ArgumentParser()
parser.add_argument("a",nargs=2, type=int, default=10, help="a is typeof int")
parser.add_argument(‘-b‘)
if __name__ == ‘__main__‘ :
args = parser.parse_args()
print args.a,args.b
运行:python arg.py 12 13
输出[12,13] none
这里传入12和13传入到a中以list形式显示,b没有传入值显示none
运行:python arg.py 12 13 -b ab
输出[12,13] ab
传入可选参数-b后显示ab
官方文档地址:
https://docs.python.org/2/howto/argparse.html#id1
参考:
http://blog.chinaunix.net/xmlrpc.php?r=blog/article&uid=21633169&id=4387657
http://www.2cto.com/kf/201412/363654.html
本文出自 “老式照相机” 博客,请务必保留此出处http://7903389.blog.51cto.com/7893389/1789889
原文地址:http://7903389.blog.51cto.com/7893389/1789889