子parser选项的默认值(Python argparse)

2024-05-23 23:32:02 发布

您现在位置:Python中文网/ 问答频道 /正文

我的程序boiler使用argparse解析命令行选项和子命令chain(实际上,我将添加更多子命令)。对于主选项解析器和子解析器,它都应该使用选项-t

示例:

boiler -t URL chain

相当于

boiler chain -t URL

子命令解析器的选项覆盖全局选项。例如:

boiler -t URL1 chain -t URL2

相当于

boiler chain -t URL2

用Python argparse编写代码最优雅的方法是什么

我真正要做的是在这个答案中描述:https://stackoverflow.com/a/53750697/856090的问题Chaining in a command line several tranformations with options。注意,上面所描述的并不完全是我所需要的,但是我需要像这里所描述的那样解析一个子命令管道(这些子命令中的一些可以使用-t选项和其他可能具有全局默认值的选项)

我真正需要的例子:

boiler -t URL1 pipe 'chain -t URL2 + chain'

在这里,由+分隔的两个链中的第一个链使用URL2,第二个链使用URL1


Tags: 方法代码命令行命令程序boiler解析器url