Сбросить ядро ​​ipython

Мне было интересно, есть ли способ перезапустить ядро ​​ipython, не закрывая его, например, функцию перезапуска ядра, которая существует в ноутбуке. Я попробовал %reset но, похоже, не очищает импорт.

    5 Solutions collect form web for “Сбросить ядро ​​ipython”

    Несмотря на то, что было бы удобно, если бы %reset очистил пространство имен и кеш для импорта (как в записной книжке), можно явно перезагрузить ранее импортированный модуль, используя importlib.reload в python3.4 или imp.reload в python3.0- 3.3 (и при необходимости перезагрузите ядро ​​на втором шаге).

    В консоли qt вы можете нажать ctrl-

    Я могу перезапустить ядро, но некоторые сеансы консоли требуют больше времени для повторного подключения. Ноутбук мгновенно обнаруживает перезагрузку ядра.

    Класс ipykernel.ipkernel.IPythonKernel имеет метод do_shutdown с параметром restart который по умолчанию имеет значение False .

    Получите ссылку на ipykernel.kernelapp.IPKernelApp который имеет ссылку на ядро ​​и вызывает do_shutdown ядра, передав True .

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

    Как я проверил?

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

    IPython Qt-консоль имеет функцию сброса ядра. Вы можете использовать это, если используете IPython Qt. ИМО это лучше, чем использование из оболочки.

    введите описание изображения здесь

    От 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() 
     
    Interesting Posts for Van-Lav

    Найдите пробелы в последовательности строк

    как разбить столбец кортежей в pandas dataframe?

    Правильное обращение с переменными искрового вещания в классе Python

    gevent.http.HTTPServer API предлагает потоковое вещание, но вместо этого выполняет буферизацию целых запросов и ответов

    Как преобразовать целое число в кратчайшую безопасную строку в Python?

    Как подсчитать количество дубликатов в списке кортежей?

    Использование cookie сеанса из селена в urllib2

    Как создать пакет ubuntu / debian для плагина twistd / twisted?

    Интроспекция Python: имя функции доступа и определение внутренней функции docstring

    Все еще нет wxPython для Python 3 (или 3.3)?

    «IOError: Broken pipe» при сохранении файлов анимации в anaconda python

    Выбрать детей объекта с ForeignKey в Django?

    Python проверяет, работает ли процесс или нет.

    matplotlib: создание двух (уложенных) подлодок с осью SHARED X, но значения SEPARATE Y

    Использование высокой памяти с использованием многопроцессорности Python

    Python - лучший язык программирования в мире.