1. 简介
命令行参数解析是后端开发中常用的一种工具,可以在命令行输入参数,从而控制程序的行为。Python中的argparse模块能够很好地处理命令行参数,包括参数类型、个数以及默认值等。本文将介绍如何在Python2.x中使用argparse模块进行命令行参数解析。
2. 安装
argparse模块是Python2.7及以上版本自带的模块,因此不需要安装。如果使用的是Python2.6及以下版本,可以使用pip进行安装。
pip install argparse
3. 常用参数
下面介绍argparse模块中常用的参数。
3.1 add_argument()
add_argument()是argparse模块中最常用的方法之一,用于添加命令行参数。该方法有一系列的参数可供选择,可以设置参数的名称、类型、默认值等。
import argparse
parser = argparse.ArgumentParser()
parser.add_argument('name', type=str, help='Enter your name') # 必需参数
parser.add_argument('--age', type=int, default=18, help='Enter your age') # 可选参数,带参数值
args = parser.parse_args()
print('Your name is:', args.name)
print('Your age is:', args.age)
上面的例子中,'name'参数是必需的,而'age'参数是可选的,可以带参数值。如果不带参数值,则使用默认值18。
3.2 help()
help()方法可以查看参数的帮助信息。
import argparse
parser = argparse.ArgumentParser()
parser.add_argument('--name', type=str, help='Enter your name')
args = parser.parse_args()
print(args.help)
上面的例子中,运行python脚本时添加--help参数,可以查看帮助信息。
3.3 nargs
nargs参数用于指定一个参数应该消耗的命令行参数个数。
import argparse
parser = argparse.ArgumentParser()
parser.add_argument('-a', '--add', type=int, nargs=2)
args = parser.parse_args()
print(args.add)
上面的例子中,-a或--add参数需要消耗2个命令行参数,如下所示。
python test.py --add 1 2
输出结果为:(1, 2)。
3.4 choices
choices参数用于指定可用的参数值,如果指定的参数值不在可用的参数列表中,则抛出异常。
import argparse
parser = argparse.ArgumentParser()
parser.add_argument('-c', '--color', type=str, choices=['red', 'green', 'blue'])
args = parser.parse_args()
print(args.color)
上面的例子中,-c或--color参数需要输入red、green或blue中的一种颜色值。
4. 结语
本文介绍了在Python2.x中如何使用argparse模块进行命令行参数解析,涵盖了argparse模块中常用的参数和方法。argparse模块在编写命令行工具时非常有用,可以避免手动解析参数的繁琐工作。