【发布时间】:2016-06-04 14:26:56
【问题描述】:
我有一个主脚本,其中包含一些选项,这些选项会导致其他几个脚本:
import argparse
parser = argparse.ArgumentParser()
group = parser.add_mutually_exclusive_group(required=True)
group.add_argument('-option1', action = "store_true")
group.add_argument('-option2', action = "store_true")
args = parser.parse_known_args()
print args
print args[0].option1
print args[0].option2
if args[0].option1:
print "running sub_script.py"
import sub_script
sub_script.main(args[1])
然后是子脚本:
def main(namespace):
import argparse
parser = argparse.ArgumentParser()
group = parser.add_mutually_exclusive_group(required=True)
group.add_argument('-sub')
args = parser.parse_args(namespace)
print args
print args.sub
if __name__ == "__main__":
main()
但是,我无法将-h 传递给sub_script.py,而是返回主脚本的帮助文档。有一种方法是告诉argparse 显示其他脚本的帮助文档,例如使用:
python main_script.py -option1 -sub -h
【问题讨论】:
-
我想你想要一个sub-command,它有它自己的帮助。