paul j3 <ajipa...@gmail.com> added the comment: And the actual exit is via `parse.error` and `parse.exit`, which are documented in 16.4.5.9.
When run interactively in Ipython, exits (including the help) are captured and displayed with: In [896]: parser.parse_args() usage: ipython3 [-h] [--one | --two | --six] ipython3: error: unrecognized arguments: --pylab --nosep --term-title --InteractiveShellApp.pylab_import_all=False An exception has occurred, use %tb to see the full traceback. SystemExit: 2 The exit makes unittesting a challenge. 'test_argparse.py' resolves this by using a subclassed parser, one that changes the error/exit, and also redirects output. ---------- nosy: +paul.j3 _______________________________________ Python tracker <rep...@bugs.python.org> <https://bugs.python.org/issue31640> _______________________________________ _______________________________________________ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com