我有一个调用其插件的特定配置文件。可以将参数传递给这些插件。这个配置文件还允许我在运行时调用任意命令。覆盖默认的argparse -h行为
插件使用许多参数:其中一个是-h
,它不代表--help
。现在,我的问题是我想调用我自己的Python脚本以及传递一些参数。我正在使用argparse并希望与配置的其余部分保持一致,我创建了-h
标志。令我惊讶的是,argparse只是给我argparse.ArgumentError: argument -h/--help: conflicting option string(s): -h
而不是自己的业务。
有没有办法阻止这种情况发生?
我很清楚,大多数人希望-h
给予帮助,但它是我自己的脚本,我认为我比使用argparse开发者更了解我想要使用的标志。
你确实比专家的开发者知道得更清楚,这就是为什么你必须说出你的意思,而不是相信他们正确地猜测你的想法。默认'-h --help'是有意义的,因为它很常见。告诉你什么时候你意外地引入了与默认期望值相冲突的事情是件好事。所有你需要做的是告诉argparse你打算这样做,一切都很好! – Ben 2013-02-19 06:28:41