python3 open notebook how change python kernel ipython reload

how - open jupyter notebook python 3



Restablecer kernel ipython (6)

Me preguntaba si hay una manera de reiniciar el kernel de ipython sin cerrarlo, como la función de reinicio del kernel que existe en el cuaderno. Intenté %reset pero eso no parece borrar las importaciones.


Aunque sería útil si %reset borraría el espacio de nombres y el caché para las importaciones (como en el cuaderno), se puede recargar explícitamente un módulo previamente importado usando importlib.reload en python3.4 o imp.reload en python3.0- 3.3 (y si es necesario, restablecer el kernel en un segundo paso).


Desde https://github.com/jupyter/notebook/blob/f19d68a33193dff07e62f11da0ebce331e8acbda/notebook/services/kernels/handlers.py#L75 :

class KernelActionHandler(APIHandler): @web.authenticated @json_errors @gen.coroutine def post(self, kernel_id, action): km = self.kernel_manager if action == ''interrupt'': km.interrupt_kernel(kernel_id) self.set_status(204) if action == ''restart'': try: yield gen.maybe_future(km.restart_kernel(kernel_id)) except Exception as e: self.log.error("Exception restarting kernel", exc_info=True) self.set_status(500) else: model = km.kernel_model(kernel_id) self.write(json.dumps(model)) self.finish()


En la consola qt podrías pulsar ctrl-


IPython Qt-console tiene una función de reinicio del kernel. Podría usar eso si está usando IPython Qt. OMI es mejor que usar desde el shell.


Podría reiniciar el kernel, pero algunas sesiones de consola tardan más en volver a conectarse. El cuaderno detecta el reinicio del kernel al instante.

ipykernel.ipkernel.IPythonKernel clase ipykernel.ipkernel.IPythonKernel tiene un método do_shutdown con un parámetro de restart que por defecto es False .

Obtenga una referencia a ipykernel.kernelapp.IPKernelApp que tiene una referencia al kernel y llame a do_shutdown del kernel pasando True .

import IPython app = IPython.Application.instance() app.kernel.do_shutdown(True)

¿Cómo hice la prueba?

$ #start notebook $ jupyter notebook $ #connect to existing kernel $ jupyter console --existing


Si ha instalado Spyder con anaconda, abra la ventana de Spyder.

Luego consolas (barra de menú) -> Reiniciar consolas.

o puedes usar CTRL +. que es un atajo para reiniciar la consola.