在开发 Python命令行工具 时,经常需要接收用户从终端传入的参数。手动解析这些参数不仅繁琐,还容易出错。好在 Python 标准库提供了一个强大又易用的模块:argparse。本 argparse教程 将带你从零开始,一步步掌握如何使用 Python argparse 构建专业级的命令行程序。

argparse 是 Python 官方推荐用于 命令行参数解析 的标准库(自 Python 2.7 起内置)。相比老旧的 optparse 或手动处理 sys.argv,它具有以下优势:
-h 或 --help)git commit、docker run)首先,你需要导入 argparse 模块,并创建一个 ArgumentParser 对象:
import argparse# 创建解析器parser = argparse.ArgumentParser( description='这是一个演示 argparse 用法的简单程序')这里的 description 参数会在用户运行 python script.py -h 时显示,用于说明程序用途。
你可以通过 add_argument() 方法定义程序接受哪些参数。参数分为两类:
parser.add_argument('filename', help='要处理的文件名')用户必须提供这个参数,否则程序会报错。
parser.add_argument('-v', '--verbose', action='store_true', help='启用详细输出模式')parser.add_argument('-n', '--number', type=int, default=1, help='重复次数(默认为1)')这里我们定义了两个可选参数:--verbose 是一个开关(有则为 True),--number 接收一个整数,默认值为 1。
最后,调用 parse_args() 解析命令行输入,并通过返回的对象访问参数值:
# 解析参数args = parser.parse_args()# 使用参数print(f"处理文件: {args.filename}")if args.verbose: print("详细模式已启用")print(f"重复 {args.number} 次")将以上代码整合成一个完整的脚本 example.py:
import argparseparser = argparse.ArgumentParser( description='一个简单的 argparse 示例程序')parser.add_argument('filename', help='要处理的文件名')parser.add_argument('-v', '--verbose', action='store_true', help='启用详细输出')parser.add_argument('-n', '--number', type=int, default=1, help='重复次数')args = parser.parse_args()print(f"正在处理文件: {args.filename}")if args.verbose: print("[INFO] 详细模式开启")for i in range(args.number): print(f"第 {i+1} 次执行")运行效果:
$ python example.py data.txt -v -n 3正在处理文件: data.txt[INFO] 详细模式开启第 1 次执行第 2 次执行第 3 次执行通过本 argparse教程,你已经学会了如何使用 Python argparse 模块来构建功能完善的 Python命令行工具。无论是简单的脚本还是复杂的 CLI 应用,argparse 都能帮你轻松实现专业的 命令行参数解析 功能。
建议多动手实践,尝试添加更多参数类型(如 choices、nargs、子命令等),你会发现 argparse 的强大远不止于此!
本文由主机测评网于2025-12-17发表在主机测评网_免费VPS_免费云服务器_免费独立服务器,如有疑问,请联系我们。
本文链接:https://www.vpshk.cn/2025129226.html