Как (периодически) пропустить определенные ячейки при запуске ноутбука IPython?Python

Программы на Python
Anonymous
 Как (периодически) пропустить определенные ячейки при запуске ноутбука IPython?

Сообщение Anonymous »

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

Однако иногда мне хотелось бы пропустить некоторые ячейки, которые не влияют на последующие ячейки (например, они могут включать в себя завершенную ветвь анализа) и могут занять очень много времени. Эти ячейки могут быть разбросаны по всему блокноту, так что что-то вроде «Выполнить все ниже» не поможет.

Есть ли способ добиться этого?

В идеале эти ячейки можно пометить специальными флажками, чтобы их можно было «Выполнить» вручную, но они были бы пропущены при выборе «Выполнить все».

ИЗМЕНИТЬ
(расширение ipycache), предложенное @Jakob, в некоторой степени решает проблему.

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

В качестве обходного пути добавьте %%cache папка/уникальный_идентификатор в начало ячейки. Код будет выполнен только один раз, и никакие переменные не будут загружены при повторном запуске, если вы не удалите файл unique_identifier.

К сожалению, все выходные результаты теряются при повторном запуске с %%cache...

EDIT II (14 октября, 2013)

Основная версия ipython+ipycache теперь также выбирает (и повторно отображает) вывод кодовой ячейки.

Для вывода расширенных изображений, включая Latex, HTML (вывод Pandas DataFrame), не забудьте использовать метод display() IPython, например, display(Latex(r'$\alpha_1$'))

Подробнее здесь: https://stackoverflow.com/questions/193 ... n-notebook

Вернуться в «Python»