编程语言
首页 > 编程语言> > python中Argparse的简单使用

python中Argparse的简单使用

作者:互联网

Argparse介绍

文档:https://docs.python.org/3.8/howto/argparse.html
主要功能就是可以从命令行读取参数,也可是直接使用下列的语句来查看相关参数的说明文档。

python text.py -h

或者

python text.py --help

Argparse的使用

有一个固定的套路就是

  1. 首先导入模块
  2. 创建一个解析对象
  3. 向该对象中添加你要用的命令行和选项
  4. 进行解析
import argparse
parser = argparse.ArgumentParser()
parser.add_argument()
args = parser.parse_args()
# 解析完就可以使用,  解析名.参数名 就是该参数

参数说明

我们来看一个具体的例子

import argparse

parser = argparse.ArgumentParser(description="calculate X to the power of Y")
group = parser.add_mutually_exclusive_group()
group.add_argument("-v", "--verbose", action="store_true")
group.add_argument("-q", "--quiet", action="store_true")
parser.add_argument("x", type=int, help="the base")
parser.add_argument("y", type=int, help="the exponent")
args = parser.parse_args()
answer = args.x**args.y

if args.quiet:
    print(answer)
elif args.verbose:
    print("{} to the power {} equals {}".format(args.x, args.y, answer))
else:
    print("{}^{} == {}".format(args.x, args.y, answer))

这里就是遵循这套路的四个步骤。
在创建一个解析对象时,有一个参数叫description,其作用就是是使用--help 或者 -h时,显示出来。在parser.add_argument()也有这样一个参数,就是help
parser.add_argument()中,
可选参数:就是可写,可不写的参数,短选项-v 和长选项--verboser都是该参数的名称,action内置6种动作可以在解析到一个参数时进行触发,默认为store

固定参数:运行该文件必须要有的值,名字前面可以没有-,其中包含参数required=Truetype可以指定输入参数的类型,default设置一个默认参数,choice可以实现候选值的操作,如:choices=['test1.txt', 'text2.txt'],
其输出为

$ python3 prog.py 4 2
4^2 == 16
$ python3 prog.py 4 2 -q
16
$ python3 prog.py 4 2 -v
4 to the power 2 equals 16
$ python3 prog.py 4 2 -vq
usage: prog.py [-h] [-v | -q] x y
prog.py: error: argument -q/--quiet: not allowed with argument -v/--verbose
$ python3 prog.py 4 2 -v --quiet
usage: prog.py [-h] [-v | -q] x y
prog.py: error: argument -q/--quiet: not allowed with argument -v/--verbose

$ python3 prog.py --help
usage: prog.py [-h] [-v | -q] x y

calculate X to the power of Y

positional arguments:
  x              the base
  y              the exponent

optional arguments:
  -h, --help     show this help message and exit
  -v, --verbose
  -q, --quiet

参考

python3中argparse模块详解
python argparse模块学习笔记

标签:Argparse,args,python,py,argument,--,参数,简单,prog
来源: https://blog.csdn.net/prague6695/article/details/118887925