Issue #19814: Clarify argparse's docs w.r.t prefix matching
This commit is contained in:
parent
22d0418f71
commit
f3114532e4
|
@ -1371,12 +1371,14 @@ argument::
|
|||
>>> parser.parse_args(['--', '-f'])
|
||||
Namespace(foo='-f', one=None)
|
||||
|
||||
.. _prefix-matching:
|
||||
|
||||
Argument abbreviations
|
||||
^^^^^^^^^^^^^^^^^^^^^^
|
||||
Argument abbreviations (prefix matching)
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
The :meth:`~ArgumentParser.parse_args` method allows long options to be
|
||||
abbreviated if the abbreviation is unambiguous::
|
||||
abbreviated to a prefix, if the abbreviation is unambiguous (the prefix matches
|
||||
a unique option)::
|
||||
|
||||
>>> parser = argparse.ArgumentParser(prog='PROG')
|
||||
>>> parser.add_argument('-bacon')
|
||||
|
@ -1852,6 +1854,12 @@ the populated namespace and the list of remaining argument strings.
|
|||
>>> parser.parse_known_args(['--foo', '--badger', 'BAR', 'spam'])
|
||||
(Namespace(bar='BAR', foo=True), ['--badger', 'spam'])
|
||||
|
||||
.. warning::
|
||||
:ref:`Prefix matching <prefix-matching>` rules apply to
|
||||
:meth:`parse_known_args`. The parser may consume an option even if it's just
|
||||
a prefix of one of its known options, instead of leaving it in the remaining
|
||||
arguments list.
|
||||
|
||||
|
||||
Customizing file parsing
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
|
Loading…
Reference in New Issue