退出python交互模式,从Jupyter Notebook退出pdb交互模式

Within pdb, I'm using the interact command to enter interactive mode (documentation at https://docs.python.org/3/library/pdb.html).

This gives me an InteractiveConsole within pdb (which I need in order to do list comprehension).

From within a Jupyter Notebook, how do I leave interactive mode without exiting the debugger entirely?

Things I've tried:

The link below answers this exact question but the solutions only work from the terminal. Ctrl-d from within Jupyter just adds a bookmark...And quit() returns:

NameError: name 'quit' is not defined

Meditating. Situation unchanged.

I can do import sys; sys.exit(), but that exits the debugger entirely, meaning I have to start from scratch.

解决方案

The only way I have been success is to copy/paste the Crtl-D character from another source. I use Emacs, so this is fairly easy, but any text editor that allows you to insert a Crtl-D into the document should work. Once inserted, use the standard copy/paste into the pdb interact field and hit or . This should get you out.

For Emacs, the long way is as follows, for demonstration purposes:

M-x insert char END OF TRANSMISSION

At this point you should see ^D in the buffer. At this point select the character and M-w or kill-ring-save to put it on the clipboard.

Then, change to the browser and make the interactive field active, and paste the character back. You will not see anything. Then hit . This should/might get you out.

你可能感兴趣的:(退出python交互模式)