diff --git a/Doc/library/argparse.rst b/Doc/library/argparse.rst index fc5302d875fc1f..23107fefe96524 100644 --- a/Doc/library/argparse.rst +++ b/Doc/library/argparse.rst @@ -791,9 +791,9 @@ how the command-line arguments should be handled. The supplied actions are: * ``'append'`` - This appends each argument value to a list. It is useful for allowing an option to be specified multiple times. - If the default value is a non-empty list, the parsed value will start - with the default list's elements and any values from the command line - will be appended after those default values. Example usage:: + If the default value is a non-empty list, the parsed value for the option + will start with the default list's elements and any values from the + command line will be appended after those default values. Example usage:: >>> parser = argparse.ArgumentParser() >>> parser.add_argument('--foo', action='append', default=['0']) @@ -818,12 +818,16 @@ how the command-line arguments should be handled. The supplied actions are: value ``'+'`` or ``'*'``. Note that when nargs_ is ``None`` (the default) or ``'?'``, each character of the argument string will be appended to the list. + If the default value is a non-empty list, the parsed value for the option + will start with the default list's elements and any values from the + command line will be appended after those default values. Example usage:: >>> parser = argparse.ArgumentParser() - >>> parser.add_argument("--foo", action="extend", nargs="+", type=str) + >>> parser.add_argument("--foo", action="extend", nargs="+", type=str, + ... default=["d1"]) >>> parser.parse_args(["--foo", "f1", "--foo", "f2", "f3", "f4"]) - Namespace(foo=['f1', 'f2', 'f3', 'f4']) + Namespace(foo=['d1', 'f1', 'f2', 'f3', 'f4']) .. versionadded:: 3.8