【发布时间】:2011-06-02 07:45:18
【问题描述】:
当我使用带有 python argparse 的子命令时,我可以得到选定的参数。
parser = argparse.ArgumentParser()
parser.add_argument('-g', '--global')
subparsers = parser.add_subparsers()
foo_parser = subparsers.add_parser('foo')
foo_parser.add_argument('-c', '--count')
bar_parser = subparsers.add_parser('bar')
args = parser.parse_args(['-g', 'xyz', 'foo', '--count', '42'])
# args => Namespace(global='xyz', count='42')
所以args 不包含'foo'。由于可能的全局参数,简单地写sys.argv[1] 是行不通的。如何获取子命令本身?
【问题讨论】:
标签: python command-line argparse