Я хотел был бы быть в состоянии сохранить TEXT выход iPython notebook cell в файл на диске.Как сохранить вывод ячейки в iPython ноутбуке?
У меня есть 2 дополнительные требования/пожелания:
- быть в состоянии повторно запустить ячейки и перезаписать мой выход с тем, что последняя является.
- также отображает вывод в ноутбуке.
Я понял, как использовать %%capture
магии для некоторой базовой экономии ячейки тетради IPython в в файл, но он не кажется достаточно гибкие: он держит добавляя каждый раз, когда я повторно запустить клетку, и я не может отображать его в одной ячейке.
Вот то, что я до сих пор:
%%capture cap --no-stderr
print 'stuff'
with open('output.txt', 'w') as f:
f.write(cap.stdout)
# clear the cap by deleting the variable here?
# del cap
Когда я пытаюсь поставить cap.show()
после записи, он, кажется, не отображается. Вместо этого он дважды выводит вывод в переменную cap.
Вы хотите * весь * текстовый вывод или только тот, который был создан операциями печати? Из-за механизма отображения IPython все объекты имеют текстовое представление, поэтому в записной книжке больше текста, чем видно в первую очередь. – Jakob
Если вы только после распечатки, посмотрите ответы на [этот вопрос] (http://stackoverflow.com/q/11325019/2870069) – Jakob