Given the following argparse setup:
def foo_bar():
print('Foobar')
parser = argparse.ArgumentParser(prog='app')
subparsers = parser.add_subparsers()
foo = subparsers.add_parser('foo')
foo_subparsers = foo.add_subparsers()
bar = foo_subparsers.add_parser('bar')
bar.set_defaults(func=foo_bar)
args = parser.parse_args()
args.func(args)
I can invoke the nested sub-command like this:
% app foo bar
Foobar