Ruggedized do_py by adding try/except/finally
Ruggedized do_py by adding try/except/finally

The finally block ensures that the self._in_py state variable always gets reset to "False" before exiting the function, even if an exception occurs.

python-cmd2/cmd2,python-cmd2/cmd2