python中argparse用法介绍

argparse模块是python的内置模块,不需要单独安装,主要用于执行脚本的时候增加参数,使整个脚本看起来更加规范,参数更加整洁有序

我们先来看看argparse常见的方法和应用

首先创建一个解析对象,description就是这个命令操作的整体描述

parser = argparse.ArgumentParser(description = "help !")

add_argument方法就是往对象中添加你需要的参数,我这里是-n,help是这个参数的描述

parser.add_argument("-n", type=int, help="输出数量!")

parse_args则是解析这个对象参数

args = parser.parse_args()

我们来看看简单测试代码

#!/usr/bin/python3
#coding:utf-8
import argparse

parser = argparse.ArgumentParser(description = "help !")
parser.add_argument("-n", type=int, help="输出数量!")
parser.add_argument("-v", type=int, help="输出版本!")
args = parser.parse_args()
print(args.v, args.n)

执行python test.py -h可以返回

图片.png

可以看到我添加的参数和描述都有,同时我们可以直接用解析的args对象获取传入的参数的值,看下面执行结果

图片.png

我们也可以不带-v,-n等这类提示参数那么直接改成下面这样即可

#!/usr/bin/python3
#coding:utf-8
import argparse

parser = argparse.ArgumentParser(description = "help !")
parser.add_argument("n")
args = parser.parse_args()
print(args.n)

我们也可以通过添加action="store_true",让-v,-n后面不带实际参数

#!/usr/bin/python3
#coding:utf-8
import argparse

parser = argparse.ArgumentParser(description = "help !")
parser.add_argument("-n", help="输出数量!", action="store_true")
parser.add_argument("-v", help="输出版本!", action="store_true")
args = parser.parse_args()
print(args.v, args.n)

返回

图片.png

如果像之前那样添加实际参数值的话就提示报错了

最后add_argument方法内还可以使用可选值choices

choices:限定参数值范围(规定只接收规定列表中的值),值为列表。例:choices=[1,2,3]
default:指定参数默认值。例:default=100

具体代码我们再看看

#!/usr/bin/python3
#coding:utf-8
import argparse

parser = argparse.ArgumentParser(description = "help !")
parser.add_argument("-n", type=int, help="输出数量!", choices=[1,2,3], default=2)
parser.add_argument("-v", type=int, help="输出版本!", choices=[7,8,9], default=8)
args = parser.parse_args()
print(args.v, args.n)

图片.png

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://sulao.cn/post/807.html