argparse用于解析命令行参数

本文介绍了argparse模块的使用,包括最简单的使用例子,创建ArgumentParser对象。详细讲解了ArgumentParser的参数,如prog、usage等,还阐述了add_argument的参数,像name、action、help等,说明了各参数的作用和使用方式。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

最简单的使用例子

这个例子什么参数都没有,

import argparse
parser = argparse.ArgumentParser()
parser.parse_args()

在这里插入图片描述
结果分析:

  • 若不给参数而运行这个程序,将不会得到任何结果。
  • 第二条命名显示了使用的argparse的好处,你什么也没做,却得到了一个很好的帮助信息。
    我们无需人为设置–help参数,就能得到一个良好的帮助信息。
    但是若给其他参数(比如foo)就会产生一个错误。
    在这里插入图片描述
创建ArgumentParser

使用argparse的第一步是创建一个 ArgumentParser对象,这个ArgumentParser对象中会保存所有将命令行参数转为python数据类型的必需信息。使用 argparse.ArgumentParser创建ArgumentParser对象。

argparse.ArgumentParser(prog=None, 
                        usage=None, 
                        epilog=None, 
                        parents=[], 
                        formatter_class=argparse.HelpFormatter, 
                        prefix_chars='-',                            
                        fromfile_prefix_chars=None,              
                        argument_default=None,
                        conflict_handler='error', 
                        add_help=True)

ArgumentParser参数

prog参数

默认为文件名称,如果有定义则显示定义内容
在这里插入图片描述

usage参数

默认情况下,ArgumentParser对象可以根据参数自动生成用法信息
在这里插入图片描述
自定义usage
在这里插入图片描述

description&epilog描述

参数前为description
epilog为参数后显示
在这里插入图片描述

prefix_chars设置可选参数前缀

在这里插入图片描述

add_argument参数

argumentParser.add_argument(name or flags…[,action][,nargs][,const][,default]
[,type][,choices][,required][,help][,metavar][,dest])

一、name----参数名称

-bar为可选参数,其中-为前缀,表示可选参数,前缀也可以自定义
在这里插入图片描述

二、action----处理命令行参数(如下几个参数)

argparse内置6种动作可以在解析到一个参数时进行触发

1、action=’store’ 仅仅保存参数值,为action默认值

保存参数值,可能会先将参数值转换成另一个数据类型。若没有显式指定动作,则默认为该动作。
在这里插入图片描述

2、action=’store_const ’ ,store_const只保存const关键字指定的值

在这里插入图片描述

三、help----参数的描述内容

import argparse
parser = argparse.ArgumentParser()
parser.add_argument('test',help='testtttttttttttt')
parser.parse_args()

在这里插入图片描述

三、choose----将命令行参数的值限定在一个范围内,超出范围则报错

四、dest—允许自定义ArgumentParser的参数属性名称

在这里插入图片描述

五、多参数的情况下

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值