diff --git a/argparse/argparse.py b/argparse/argparse.py index 977f5522..d8c2ef95 100644 --- a/argparse/argparse.py +++ b/argparse/argparse.py @@ -98,6 +98,8 @@ class ArgumentParser: dest = kwargs.get("dest") if dest is None: dest = args[0] + if not args: + args = [dest] list.append( _Arg(args, dest, action, kwargs.get("nargs", None), const, default, kwargs.get("help", ""))) diff --git a/argparse/test_argparse.py b/argparse/test_argparse.py index ff534af8..ad3d8060 100644 --- a/argparse/test_argparse.py +++ b/argparse/test_argparse.py @@ -3,7 +3,7 @@ import argparse parser = argparse.ArgumentParser(description="command line program") parser.add_argument("a") parser.add_argument("b") -parser.add_argument("c") +parser.add_argument(dest="c") args = parser.parse_args(["1", "2", "3"]) assert args.a == "1" and args.b == "2" and args.c == "3"