New submission from Atsuo Ishimoto <ishim...@python.jp>:
I sometime use a hack to start interactive console after running script. .. code-block:: python import os os.environ['PYTHONINSPECT'] = 'x' print("Hello") This hack works because ``PYTHONINSPECT`` is checked `here <https://github.com/python/cpython/blob/master/Modules/main.c#L738>`__ when exiting Python. However, if the script uses ``sys.exit()`` to exit from Python, interactive console doen't apper because unhandled ``SystemExit`` exception leads ``exit()`` call to kill process, without checking ``PYTHONINSPECT``. .. code-block:: python import os, sys os.environ['PYTHONINSPECT'] = 'x' print("Hello") sys.exit(1) # Interactive console will not start I think feature to allow updating ``Py_InspectFlag`` is useful, and this is a bugs to be fixed. However, setting environment variable to start console is not intuituve. So instead of fixing bug, I would like to propose a small function to set ``Py_InspectFlag`` to start interactive console after running script. .. code-block:: python sys.setinteractiveflag(bool) Thoughts? ---------- components: Interpreter Core messages: 336993 nosy: ishimoto priority: normal severity: normal status: open title: Updating Py_InspectFlag programmatically type: behavior _______________________________________ Python tracker <rep...@bugs.python.org> <https://bugs.python.org/issue36164> _______________________________________ _______________________________________________ Python-bugs-list mailing list Unsubscribe: https://mail.python.org/mailman/options/python-bugs-list/archive%40mail-archive.com