Python argparse库简单入门
Posted ALKING1001
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python argparse库简单入门相关的知识,希望对你有一定的参考价值。
Python argparse库简单入门
资料参参考
知乎:https://zhuanlan.zhihu.com/p/138294710 比较全面
知乎:https://zhuanlan.zhihu.com/p/56922793 比较简洁
argparse库简单介绍
argparse 是 Python 的一个库,用于为程序提供命令行接口。使得程序员关注于接口功能的实现,而不用去关注于用户的输入的命令是否正确。
大体的流程是:
import argparse # 导入库
创建parser对象
向parser中添加参数
运行对象中的parse_args()函数,相当于获得一个完整的命令行解释器对象,执行完 .parse_args() 后,会得到一个 Namespace object,里面包含了从命令行中接收到的参数信息。
库中具体的函数介绍
parser库的主要函数就是.add_argument()
函数了,作用是添加参数,参数类型大体可以分为两种:
- 位置参数:位置固定,不能颠倒顺序,并且不能省略。
- 可选参数:位置不固定(但是需要在输入前使用类似关键字的东西),可以省略也可以不省略(这个可以在设置里面自己设置)
位置参数
顺序固定,输入时必须提供相应的参数
示例:
import argparse
parser = argparse.ArgumentParser(description = ‘test‘)
parser.add_argument(‘arg1‘, type = int , help = ‘第一个位置参数,参数类型为int‘)
parser.add_argument(‘arg2‘, type = str, help=‘第二个参数‘)
args = parser.parse_args()
print(vars(args))
使用下面的代码来运行上面的程序,假设保存上面代码的文件名为test123.py
python test23.py 123 hello
输出如下:
{‘arg1‘:123, ‘arg2‘:‘hello‘}
可选参数
顺序不定,使用类似关键字的形式来输入参数。
例如:
文件名:test123
import argparse
parser = argparse.ArgumentParser(description= ‘test2‘)
parser.add_argument(‘-a‘, ‘--apple‘, type=int, default=10)
parser.add_argument(‘-s‘, type=str, help=‘this is a string‘)
args = parser.parse_args()
print(vars(args))
运行上面的程序
python -a 12 -s hello
输出
{‘apple‘:12, ‘s‘:‘hello‘}
在add_argument()
中添加required = True
,表示这个可选参数变成了必须参数。
以上是关于Python argparse库简单入门的主要内容,如果未能解决你的问题,请参考以下文章