Python的常用库argparse介绍

Python的常用库argparse的基本用法和示例

argparse是python用于解析命令行参数和选项的标准模块,用于代替已经过时的optparse模块。
argparse模块的作用是用于解析命令行参数


写在前面

此博客用于记录小康学习python学习历程,以及所遇到的问题,希望能够帮助那些走在我后面的朋友和同行,如果觉得我的博客有用,也希望大家的关注和支持,博客中所有文案请勿转载,均为小康原创!

一、argparse库的基本命令及其解释

创建解析器对象ArgumentParser: argparse.ArgumentParser()

【prog】 - 程序的名称(默认值:sys.argv[0])
【usage】 - 描述程序用途的字符串(默认值:从添加到解析器的参数生成)
【description】 - 在参数帮助文档之前显示的文本(默认值:无)
【epilog】 - 在参数帮助文档之后显示的文本(默认值:无)
【parents】 - 一个 ArgumentParser 对象的列表,它们的参数也应包含在内
【formatter_class】 - 用于自定义帮助文档输出格式的类
【prefix_chars】 - 可选参数的前缀字符集合(默认值: ‘-’)
【fromfile_prefix_chars】 - 当需要从文件中读取其他参数时,用于标识文件名的前缀字符集合(默认值: None)
【argument_default】 - 参数的全局默认值(默认值: None)
【conflict_handler】 - 解决冲突选项的策略(通常是不必要的)
【add_help】 - 为解析器添加一个 -h/–help 选项(默认值: True)
【allow_abbrev】 - 如果缩写是无歧义的,则允许缩写长选项 (默认值:True),该参数从Python3.5开始才有。在Python3.8之前的版本中,该参数还会禁用短旗标分组,例如 -vv 表示为 -v-v。
【exit_on_error】 - 决定当错误发生时是否让 ArgumentParser 附带错误信息退出。该参数在Python3.9版本中才有 (默认值: True)

添加参数add_argument: argparse.add_argument()

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

完成参数的解析parse_args: argparse.parse_args()

【args】 - 要解析的字符串列表。 默认值是从 sys.argv 获取。
【namespace】 - 用于获取属性的对象。 默认值是一个新的空 Namespace 对象。

二、使用步骤

1.引入库

代码如下(示例):

import argparse

2.关键代码

代码如下(示例):

def argp():
    paser=argparse.ArgumentParser(prog="小康测试库argparse",
                                  description="这是一个实现加法的简单命令行脚本",
                                  usage="程序[%(prog)s] 实现了如下功能:对后续两个连续数值进行加法运算并打印",
                                  epilog='暂无额外信息。');
    paser.add_argument('-a', dest='a1', help='第一个加数', type=int, required=True)
    paser.add_argument('-b', dest='b1', help='第二个加数', type=int, required=True)
    args = paser.parse_args()
    return args

if __name__ == "__main__":
    args = argp()
    print(args.a1+args.b1)

运行后显示
C:\Users\Administrator\Desktop\video_revert_byXK>C:\Users\Administrator\AppData\Local\Programs\Python\Python310\python learnarg.py -a 20 -b 500
显示结果
520


总结

虽然还有很多很多关于这个库的使用方法,但本记录以简洁实用易懂为初衷,师父领进门,修行靠个人,希望大家能够将以上简单例子作为argparse库学习的起点,不断努力向前!

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

xiaoKang学AI

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值