Python小妙招 argparse库——命令行参数解析模块 用法总结
日期: 2020-11-09 分类: 跨站数据 383次阅读
Python argparse库——命令行参数解析模块 用法总结
1. 导入模块
- import argparse 首先导入python库
- parser = argparse.ArgumentParser(description=“your script desciption”) 创建一个解析对象,description参数可以用于插入描述脚本用途的信息,可以为空。
- parser.add_argument() 向该对象中添加你要使用的命令行参数和选项
- parser.parse_args() 进行解析
在多个文件或者不同语言协同的项目中,python脚本经常需要从命令行直接读取参数,这时我们就需要应用argparse库
2. 创建一个最简单脚本
import argparse
parser = argparse.AugmentParser()
parser.parse_args()
3. 添加参数parser.add_argument()
positional arguments-位置参数,默认必选
parser.add_argument("b")
optional arguments-可选参数
-w 指定的短参数
--weight 指定的长参数
parser.add_argument("-w","--weight")
这样的话-v必须指定参数值,否则就会报错,如果不给-v传参,还想不让程序报错的话,可以用:
parser.add_argument("-w","--weight", action="store_true")
type-参数类型
<font color=black size =4>默认的为str
parser.add_argument("-w","--weight", type=int, action="store_true")
choices[]-可选值
限定参数取值范围
parser.add_argument("-w","--weight", choices=[0, 1, 2, 3, 4], type=int, action="store_true")
default-参数默认值
parser.add_argument("-w","--weight",
choices=[0, 1, 2, 3, 4],
type=int,
action="store_true",
default=0)
程序用法帮助
description&&help
parser = argparse.ArgumentParser(description="训练DaliNet模型")
parser.add_argument("-w","--weight",
choices=[0, 1, 2, 3, 4],
type=int,
action="store_true",
default=0,
help="存放weight的位置")
parser.parse_args()
parse_known_args()解析
和parse_args()很像,但parse_known_args()在接受命令行多余参数时不会报错
parser = argparse.ArgumentParser(description="训练DaliNet模型")
parser.add_argument("-w","--weight",
choices=[0, 1, 2, 3, 4],
type=int,
action="store_true",
default=0,
help="存放weight的位置")
flags, unparsed = parser.parse_known_args()
#$ python prog.py --flag_int 0.02 --double 0.03 a 1
#Namespace(flag_int=0.02)
#['--double', '0.03', 'a', '1']
除特别声明,本站所有文章均为原创,如需转载请以超级链接形式注明出处:SmartCat's Blog
精华推荐