]> git.ipfire.org Git - thirdparty/Python/cpython.git/commitdiff
GH-139067: Add example for `argparse`'s `append` action (#131389)
authorMoshe Kaplan <mosheekaplan@gmail.com>
Wed, 17 Sep 2025 16:24:20 +0000 (12:24 -0400)
committerGitHub <noreply@github.com>
Wed, 17 Sep 2025 16:24:20 +0000 (17:24 +0100)
Doc/library/argparse.rst

index efa936da10208d34887029b8412ec39500a9375d..a7603ac272633d3256e26b33481bc8e2277fbb23 100644 (file)
@@ -774,16 +774,16 @@ how the command-line arguments should be handled. The supplied actions are:
     >>> parser.parse_args('--foo --bar'.split())
     Namespace(foo=True, bar=False, baz=True)
 
-* ``'append'`` - This stores a list, and appends each argument value to the
-  list. It is useful to allow an option to be specified multiple times.
-  If the default value is non-empty, the default elements will be present
-  in the parsed value for the option, with any values from the
-  command line appended after those default values. Example usage::
+* ``'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::
 
     >>> parser = argparse.ArgumentParser()
-    >>> parser.add_argument('--foo', action='append')
+    >>> parser.add_argument('--foo', action='append', default=['0'])
     >>> parser.parse_args('--foo 1 --foo 2'.split())
-    Namespace(foo=['1', '2'])
+    Namespace(foo=['0', '1', '2'])
 
 * ``'append_const'`` - This stores a list, and appends the value specified by
   the const_ keyword argument to the list; note that the const_ keyword