parser.add_argument ()的简单使用

parser.add_argument ()的简单使用:
创建解析器:

# 创建解析器,ArgumentParser()里面有具体的参数,记得学习
parser = argparse.ArgumentParser()

添加参数:

# 添加参数,定义程序需要的参数以及其默认值
'''名字,type参数类型,default默认值,help:参数描述,metavar'''
parser.add_argument('--input_dir', type=int, default=44, help='')
parser.add_argument('--output_dir', type=int, default=55, help='')

解析参数:

'''parse_args(args=None, nampespace=None)--args参数名称,namespace赋值'''
a = parser.parse_args()
print("input_dir默认值:", a.input_dir, "\noutput_dir默认值:", a.output_dir, "\ntest默认值:", a.test)
# print(parser.parse_args(['4', '66', 'name']))

print(parser.parse_args())

输出结果为:

input_dir默认值: 44 
output_dir默认值: 55 
test默认值: name
Namespace(input_dir=44, output_dir=55, test='name', test1=66, test2='name2')

Process finished with exit code 0
`argparse` 是 Python 标准库中用于解析命令行参数的模块。`parser.add_argument` 是 `argparse` 模块中的一个方法,用于定义命令行参数。下面是 `parser.add_argument` 的详细解释: ### `parser.add_argument` 的基本用法 ```python import argparse parser = argparse.ArgumentParser(description='Process some integers.') parser.add_argument('integers', metavar='N', type=int, nargs='+', help='an integer for the accumulator') parser.add_argument('--sum', dest='accumulate', action='store_const', const=sum, default=max, help='sum the integers (default: find the max)') args = parser.parse_args() print(args.accumulate(args.integers)) ``` ### 参数详解 1. **位置参数**: - `integers`:这是位置参数,意味着在命令行中必须提供这个参数。 - `nargs='+'`:表示这个参数可以有多个值,至少一个。 2. **可选参数**: - `--sum`:这是可选参数,可以通过 `--sum` 来指定。 - `dest='accumulate'`:指定解析后的参数存储在 `args` 对象的 `accumulate` 属性中。 - `action='store_const'`:表示当指定 `--sum` 时,`accumulate` 的值将被设置为 `const` 参数的值。 - `const=sum`:当指定 `--sum` 时,`accumulate` 的值将被设置为 `sum` 函数。 - `default=max`:当不指定 `--sum` 时,`accumulate` 的默认值是 `max` 函数。 3. **帮助信息**: - `help='an integer for the accumulator'`:提供帮助信息,当用户使用 `--help` 时显示。 ### 常用参数 - `type`:指定参数的类型,例如 `int`, `float`, `str` 等。 - `default`:指定参数的默认值。 - `choices`:指定参数的可选值,例如 `choices=[1, 2, 3]`。 - `required`:指定参数是否为必填项,默认为 `False`。 - `help`:提供参数的帮助信息。 ### 示例 ```python import argparse parser = argparse.ArgumentParser(description='Example of argparse') parser.add_argument('-o', '--output', type=str, default='output.txt', help='Output file name') parser.add_argument('-n', '--number', type=int, required=True, help='A required integer') parser.add_argument('--verbose', action='store_true', help='Enable verbose output') args = parser.parse_args() print(f'Output file: {args.output}') print(f'Number: {args.number}') print(f'Verbose: {args.verbose}') ``` 在这个示例中,`output` 是一个可选参数,`number` 是一个必填参数,`verbose` 是一个布尔类型的可选参数。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值