summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--Doc/library/argparse.rst9
1 files changed, 8 insertions, 1 deletions
diff --git a/Doc/library/argparse.rst b/Doc/library/argparse.rst
index c2cf7d3..6dffd2e 100644
--- a/Doc/library/argparse.rst
+++ b/Doc/library/argparse.rst
@@ -2029,7 +2029,14 @@ Exiting methods
.. method:: ArgumentParser.exit(status=0, message=None)
This method terminates the program, exiting with the specified *status*
- and, if given, it prints a *message* before that.
+ and, if given, it prints a *message* before that. The user can override
+ this method to handle these steps differently::
+
+ class ErrorCatchingArgumentParser(argparse.ArgumentParser):
+ def exit(self, status=0, message=None):
+ if status:
+ raise Exception(f'Exiting because of an error: {message}')
+ exit(status)
.. method:: ArgumentParser.error(message)