Reset ipython kernel
Even though it would be handy if %reset
would clear the namespace and the cache for the imports (as in the notebook) one can explicitly reload a previously imported module using importlib.reload
in python3.4 or imp.reload
in python3.0-3.3 (and if needed reset the kernel in a second step).
I could restart the kernel, but some console sessions take longer to reconnect. Notebook detects kernel restart instantly.
ipykernel.ipkernel.IPythonKernel
class has a do_shutdown
method with restart
parameter which defaults to False
.
Get a reference to ipykernel.kernelapp.IPKernelApp
which has a reference to the kernel and call do_shutdown
of the kernel by passing True
.
import IPythonapp = IPython.Application.instance()app.kernel.do_shutdown(True)
How did I test?
$ #start notebook$ jupyter notebook$ #connect to existing kernel$ jupyter console --existing