python-argparse用法简介
1. argparse介绍
argparse是Python标准库中用于解析命令行参数的模块。它提供了一种简洁而灵活的方式来处理命令行参数,包括选项(可选参数)和位置参数(必需参数)
2. argparse基本使用
点击查看代码
import argparse
# 1. 创建ArgumentParser对象,在创建ArgumentParser对象时,可以传入一个可选的description参数,用于描述你的程序的功能和用法。
parser = argparse.ArgumentParser(description='Description of your program')
# 2. 添加命令行参数
# 2.1 添加位置参数
# 位置参数指的是位置参数是指在命令行中没有使用选项标志(如-或--)的参数,它们根据在解析器中定义的顺序进行解析。所以位置参数在传入时要根据定义顺序传入
parser.add_argument('name', help="Name of the person")
# 2.2 添加可选参数
# 以下-g和--greeting的关系:
# -g: 短选项。使用方式示例:-g "Hello" 或 -gHello
# -greeting: 长选项。似乎用方式示例:--greeting "Hello" 或 --greeting=Hello
# -g和--greeting两种方式可以同时存在,也可以只选其一。
parser.add_argument('-g', '--greeting', help='Greeting message')
# 3. 解析命令行参数
args = parser.parse_args() # parse_args()方法会解析命令行参数,并返回一个包含解析结果的命名空间对象
# 4. 使用解析结果
# 可以通过访问命名空间对象的属性来获取解析后的参数值。
print(args.name)
print(args.greeting)
print(args.g)
3. 子命令解析器
点击查看代码示例
import argparse
# 创建解析器对象
parser = argparse.ArgumentParser()
# 创建子命令解析器对象
subparsers = parser.add_subparsers(dest='command')
# 创建子命令 'add' 的解析器
add_parser = subparsers.add_parser('add')
add_parser.add_argument('numbers', type=int, nargs='+', help='numbers to add')
# 创建子命令 'multiply' 的解析器
multiply_parser = subparsers.add_parser('multiply')
multiply_parser.add_argument('numbers', type=int, nargs='+', help='numbers to multiply')
# 解析命令行参数
args = parser.parse_args()
# 根据命令调用相应的处理函数
if args.command == 'add':
result = sum(args.numbers)
print(f'Sum: {result}')
elif args.command == 'multiply':
result = 1
for num in args.numbers:
result *= num
print(f'Product: {result}')
点击查看示例运行结果
$ python argparse_for_subparser.py add 2 3 4
Sum: 9
$ python argparse_for_subparser.py multiply 2 3 4
Product: 24
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列1:轻松3步本地部署deepseek,普通电脑可用
· 按钮权限的设计及实现
· 【杂谈】分布式事务——高大上的无用知识?