python 参数解析 —— argsparse Posted on 2018-05-17 | Edited on 2018-07-31 | In python argsparse 解析命令行参数,一些常用参数整理。 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455import argparseparser = argparse.ArgumentParser(# prog=__file__, # 设置项目名称,__file__ 与 sys.argv[0] 一致,默认显示为 basename(__file__) usage=''' python %(prog)s [option] ''', # 设置脚本输出默认 USAGE 信息 description=''' some script description ''', # 脚本功能描述等等 formatter_class=argparse.RawTextHelpFormatter, # 以脚本内原始文档格式输出描述等信息 epilog=''' Note and input example, and so on. ''') # 脚本描述以外的其他信息parser.add_argument('-v', '--version', # 添加脚本版本信息参数 action='version', version='%(prog)s 2.0')# 添加一个普通的可选参数parser.add_argument('-e', # 短参数 '--example', # 长参数 dest='example', # 参数对应模块内部,唯一标识符 metavar='', # 设置help信息中参数后字符 action='store', # 参数处理方式 type=str, # 传入参数类型 choices=['a', 'b', 'c'], # 参数选择范围 required=True, # 表示该参数必须被设置 default='a', # 参数缺省时,该参数默认值 nargs='+', # 参数个数,*+?,表示至少一个输入 help='some help infor') # help信息# action属性为store_true, store_false, store_const时,参数不接任何输入信息parser.add_argument('--sum', dest='accumulate', action='store_const', # 该参数被设置时,参数取值成 const 对应值 const=sum, default=max, help='sum the integers (default: find the max)')# 位置参数parser.add_argument('pos', dest='pos_argument', metavar='', nargs='+', # 参数输入文件个数 help='some help infor')# 互斥参数组,组内参数不可同时出现,required=True表示组内必须有参数被设置exclusive = parser.add_mutually_exclusive_group(required=True) exclusive.add_argument('-a', )exclusive.add_argument('-b', )# 设置多个参数为一组,无实际意义,仅在打印help信息时,分组显示group = parser.add_argument_group('argument group info') group.add_argument('-c', )group.add_argument('-d', )# parse.print_help()args = parser.parse_args() # 参数解析,生成可调用对象example = args.example# ... ---------本文结束,感谢您的阅读---------