Python的parser和argparse库详解,给出例子

Python的parser库详解,给出例子

当我们编写Python代码时,常常需要解析各种输入和文件格式。例如,我们可能需要解析命令行参数,或者解析一些标记化的文本格式。Python的parser库就是为此而生的。

Python的parser库提供了一些工具,可以帮助我们解析文本或文件,并将其转换成Python对象。在本篇博客中,我们将介绍parser库的基本使用方法,并提供一些例子来说明其用法。

安装和导入

parser库是Python标准库的一部分,因此不需要额外安装。我们可以使用以下代码导入parser库:

import parser

parser和argparse都是Python标准库中的模块,它们都可以用来解析命令行参数。但是,argparse是Python标准库中的一个更高级的模块,它提供了更多的功能和选项。

例如,argparse可以自动为你生成帮助信息,而parser则不行。此外,argparse还支持子命令,这使得你可以轻松地编写复杂的命令行工具。

import argparse

parser = argparse.ArgumentParser(description='这是一个演示程序')
parser.add_argument('--name', type=str, help='你的名字')
parser.add_argument('--age', type=int, help='你的年龄')

args = parser.parse_args()

print('你好,我的名字是{},我今年{}岁了。'.format(args.name, args.age))

输出
在这里插入图片描述
如果需要默认参数加上 d e f a u l t default default属性就可以了, 例如

parser.add_argument('--name', type=str, help='你的名字', default='张三')
parser.add_argument('--age', type=int, help='你的年龄', default=18)

或者

# 设置默认值
parser.set_defaults(name='李四')

有时候可以在 a r g p a r s e . A r g u m e n t P a r s e r ( d e s c r i p t i o n = ′ d e m o ′ , f o r m a t t e r _ c l a s s = a r g p a r s e . A r g u m e n t D e f a u l t s H e l p F o r m a t t e r ) argparse.ArgumentParser( description='demo', formatter\_class=argparse.ArgumentDefaultsHelpFormatter) argparse.ArgumentParser(description=demo,formatter_class=argparse.ArgumentDefaultsHelpFormatter)
加上 f o r m a t t e r _ c l a s s = a r g p a r s e . A r g u m e n t D e f a u l t s H e l p F o r m a t t e r formatter\_class=argparse.ArgumentDefaultsHelpFormatter formatter_class=argparse.ArgumentDefaultsHelpFormatter
它是一个可选参数,它指定了如何格式化帮助信息。
在这种情况下,使用的是 A r g u m e n t D e f a u l t s H e l p F o r m a t t e r ArgumentDefaultsHelpFormatter ArgumentDefaultsHelpFormatter,它将默认值添加到每个参数的帮助文本中。

例如,如果我们有一个名为–name的参数,并且我们在定义时设置了默认值为张三,则帮助文本将如下所示:

--name NAME 你的名字 (default: 张三)

猜你喜欢

转载自blog.csdn.net/a1920993165/article/details/129772004