python argparse - 命令行参数解析
argparse 模块是 Python 标准库的一部分,它使得编写用户友好的命令行接口变得简单。通过该模块,你可以生成帮助信息和解析命令行参数,同时还能自动生成命令的帮助和使用信息。
基本用法
首先,你需要导入 argparse 模块,并创建一个 ArgumentParser 对象。然后,你就可以添加参数到这个对象中,并最终调用 parse_args() 方法来解析传入的参数。
下面是一个简单的例子:
import argparse
# 创建解析器
parser = argparse.ArgumentParser(description='命令行示例')
# 添加参数
parser.add_argument('--name', type=str, default='world', help='你的名字')
# 解析参数
args = parser.parse_args()
print(f"你好, {args.name}")
在这个例子中,我们定义了一个名为 --name 的可选参数,其默认值为 'world'。如果用户在命令行输入了 --name 参数,则会使用提供的值替换默认值。
示例详解
添加位置参数
位置参数是指那些必须提供的参数,它们按照顺序出现在命令行中。
parser.add_argument('filename', type=str, help='要处理的文件名')
添加可选参数
可选参数通常以 - 或 -- 开头,用户可以选择是否提供这些参数。
parser.add_argument('--verbose', '-v', action='store_true', help='启用详细输出')
指定参数类型
使用 type 参数可以指定参数应转换成的数据类型。
parser.add_argument('--number', type=int, help='一个整数')
设置默认值
如果没有提供某个参数,可以通过 default 来设定默认值。
parser.add_argument('--output', default='output.txt', help='输出文件名')
处理布尔标志
当使用 action='store_true' 时,如果指定了该参数,则其值为 True;否则为 False。
parser.add_argument('--debug', action='store_true', help='启用调试模式')
互斥参数组
在某些情况下,你可能希望用户提供一组参数中的一个。这可以通过 add_mutually_exclusive_group() 方法实现。
group = parser.add_mutually_exclusive_group()
group.add_argument('--extract', action='store_true', help='提取操作')
group.add_argument('--compress', action='store_true', help='压缩操作')
子命令支持
argparse 支持子命令,这对于构建复杂的命令行工具非常有用。
subparsers = parser.add_subparsers(help='命令帮助')
parser_a = subparsers.add_parser('command_a', help='命令A的帮助')
parser_a.add_argument('--option', help='选项')
运行程序
假设上述代码保存为 example.py 文件,可以通过以下方式运行并传递参数:
提供位置参数:
python example.py input.txt
提供可选参数:
python example.py --verbose --number=5
查看帮助信息:
python example.py -h
argparse 模块的强大之处在于它能够自动处理参数解析、错误检查以及帮助信息的生成,极大地简化了命令行应用程序的开发过程。无论你是需要构建简单的脚本还是复杂的应用程序,argparse 都能提供必要的功能和支持。
最后作为一位过来人也是希望大家少走一些弯路,如果你不想再体验一次学习时找不到资料,没人解答问题,坚持几天便放弃的感受的话,在这里我给大家分享一些软件测试的学习资源,希望能给你前进的路上带来帮助。

视频文档获取方式:
这份文档和视频资料,对于想从事【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴我走过了最艰难的路程,希望也能帮助到你!以上均可以分享,点下方小卡片即可自行领取。

更多推荐
所有评论(0)