Python argparse库简单入门
资料参参考
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,表示这个可选参数变成了必须参数。