【Python】argparse - 命令行选项、参数和子命令解析器

本文详细介绍了Python的argparse模块,用于创建命令行接口。涵盖了位置参数、可选参数、短参数、冗长参数及其子类别,包括不定参数、计数参数、区间参数、互斥参数等。此外,还讨论了nargs、Action、const、choices、metavar和dest等参数类型及其在命令行解析中的作用。
摘要由CSDN通过智能技术生成

一. 介绍

argparse 模块可以让人轻松编写用户友好的命令行接口。程序定义它需要的参数,然后 argparse 将弄清如何从 sys.argv 解析出那些参数。

argparse 模块还会自动生成帮助和使用手册,并在用户给程序传入无效参数时报出错误信息。

二. API

定义单个的命令行参数应当如何解析。每个形参都在下面有它自己更多的描述,长话短说有:

name or flags - 一个命名或者一个选项字符串的列表,例如 foo 或 -f, --foo。
action - 当参数在命令行中出现时使用的动作基本类型。
nargs - 命令行参数应当消耗的数目。
const - 被一些 action 和 nargs 选择所需求的常数。
default - 当参数未在命令行中出现时使用的值。
type - 命令行参数应当被转换成的类型。
choices - 可用的参数的容器。
required - 此命令行选项是否可省略(仅选项可用)。
help - 一个此选项作用的简单描述。
metavar - 在使用方法消息中使用的参数值示例。
dest - 被添加到 parse_args() 所返回对象上的属性名。

常用参数类型有如下几种:

*name_or_flags
action
nargs
const
default
type
choices
required
help
metavar
dest
version
**kwargs

2.1 位置参数

import argparse

parser = argparse.ArgumentParser()
parser.add_argument("square", type=int,
                    help="display a square of a given number")
args = parser.parse_args()

2.2 可选参数

import argparse

parser = argparse.ArgumentParser()
parser.add_argument<
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值