argparse用Python开发一个命令行工具
如何编写一个python命令行工具
import argparse
def parse_args():
parser = argparse.ArgumentParser()
parser.add_argument(
"-nc", "--test_a", type=int, default=10, help="test A"
)
parser.add_argument(
"-tp", "--test_b", type = int, default=100, help = "test B"
)
return parser.parse_args()
def add_numbers(a, b):
return args.test_a + args.test_b
if __name__ == "__main__":
args = parse_args()
result = add_numbers(args.test_a, args.test_b)
print(result)
argparse模块中,add_argument()方法是用来添加命令行参数的方法。支持多种参数来定义如何解析命令行输入。
1. dest: 指定存放解析后的参数值的属性名。
2. type: 参数所需的类型,如`int`, `float`, `str`等。
3. default: 如果没有指定该参数,该值将用作默认值。
4. nargs: 指出应该收集多少个命令行参数。
5. choices: 参数必须是指定范围内的值。
6. required: 是否该参数是必须的。
7. help: 参数的帮助信息。
8. metavar: 在帮助信息和错误消息中,用于表示参数名的占位符。
9. action: 指定如何处理该参数,如`store_true`, `store_false`, `append`, `count`等。
10. option_strings: 用于命令行的短选项和长选项前缀。
11. version: 如果是`--version`,则打印版本信息并退出。
12. formatter_class: 用于自定义帮助信息的格式。
13. conflict_handler: 解决参数间的冲突。
14. required: 标记该参数是否必须被提供。
15. choices: 指定可选参数的列表。
这是一个命令行应用程序,来做将两个数相加。使用了 Python 内置的 argparse 模块来处理命令行参数。
首先定义了一个 add_numbers 函数,用于执行两个数的相加操作。
然后使用 argparse.ArgumentParser 创建一个参数解析器。
然后使用 parser.parse_args() 解析命令行参数,并将结果存储在 args 对象中。
最后调用 add_numbers 函数,传入 args.test_a 和 args.test_b 作为参数,计算和,并将结果打印。
在命令行中运行这个脚本,并提供两个整数参数来查看结果。例如:


浙公网安备 33010602011771号