这篇教程Python包argparse模块常用方法写得很实用,希望能帮到您。
argparse介绍 argparse包用于解释命令行参数。这里给出几个常用的方法。 # 创建解析器对象# @para: description:描述信息Arg = ArgumentParser(description='An example for Python package argparse~')# 添加参数# @para: 后面举例子再细说Arg.add_argument()# 解析参数# @return: 返回的arg是一个对象,里面的属性和属性值来自命令行arg = Arg.parse_args()# 创建互斥组# @description:互斥组内的参数不能同时出现Arg.add_mutually_exclusive_group()
argparse实例基本使用 import argparseArg = argparse.ArgumentParser(description='An example for Python package argparse~')arg = Arg.parse_args() 不添加任何参数,cmd运行结果: 
默认可以使用-h或者–help查看参数列表。因为没有添加任何参数,因此,这里只有一个-h。可以看到description的描述信息也可以在-h下打印出来。 添加参数 import argparseArg = argparse.ArgumentParser(description='An example for Python package argparse~')Arg.add_argument('a')arg = Arg.parse_args()print("arg 的内的参数{}".format(arg.a))args = vars(arg)print("arg 的内的参数{}".format(args['a'])) 
添加参数后,需要在运行后面带上参数,否则报错。 添加可选参数 前面添加的参数,一定要传入参数值。 import argparseArg = argparse.ArgumentParser(description='An example for Python package argparse~')Arg.add_argument('-a','-all',help='add all para!')arg = Arg.parse_args()print("arg 的内的参数{}".format(arg.a))args = vars(arg)print("arg 的内的参数{}".format(args['a'])) 只需在参数前加上- (用于一个字母,例如-h )或者-- (用于多个字母,例如--help ),即可选择是否需要传入参数。 
但是如果指定了参数,后面一定要跟上参数值,否则会报错。例如: 
在添加参数的时候,加上action="store_true" , import argparseArg = argparse.ArgumentParser(description='An example for Python package argparse~')Arg.add_argument('-a','-all',help='add all para!',action="store_true")arg = Arg.parse_args()print("arg 的内的参数{}".format(arg.a))args = vars(arg)print("arg 的内的参数{}".format(args['a'])) 
当我们带上-a 运行,在代码里得到的a值为True ,不带则为False 。这个是不是和-h 类似,当我们带上-h ,里面有个if判断,就把相关信息print出来了。 固定类型type import argparseArg = argparse.ArgumentParser(description='An example for Python package argparse~')Arg.add_argument('-a','-all',type = int ,help='add all para!',action="store_true")arg = Arg.parse_args()print("arg 的内的参数{}".format(arg.a))args = vars(arg)print("arg 的内的参数{}".format(args['a'])) 
可选值和默认值 import argparseArg = argparse.ArgumentParser(description='An example for Python package argparse~')Arg.add_argument('-a','-all',type = int ,help='add all para!',choices=[0,1,2,3],default='3')arg = Arg.parse_args()print("arg 的内的参数{}".format(arg.a))args = vars(arg)print("arg 的内的参数{}".format(args['a'])) 
互斥参数 import argparseArg = argparse.ArgumentParser(description='An example for Python package argparse~')Gro = Arg.add_mutually_exclusive_group()Gro.add_argument('-a','-all',help='add all para!')Gro.add_argument('-b','-ball',help='add ball para!')arg = Arg.parse_args()args = vars(arg)if args.get('a',None): print("arg 的内的参数b:{}".format(args['a']))if args.get('b', None): print("arg 的内的参数b:{}".format(args['b'])) 
可以看出,在互斥组内,参数不可以同时出现,仅可出现一个或者都不出现。所以在互斥组内添加的参数必须是可选参数,也就是以- 或者-- 开头的。 以上就是Python包argparse模块常用方法的详细内容,更多关于Python包argparse使用的资料请关注51zixue.net其它相关文章! opencv读取视频并保存图像的方法 Python OpenCV 图像平移的实现示例 |