Как отобразить полный вывод в Jupyter, а не только последний результат?
Я хочу, чтобы Jupyter печатал весь интерактивный вывод, не прибегая к печати, а не только к последнему результату. Как это сделать?
Пример:
a=3
a
a+1
Я хотел бы показать
3
4
5 ответов
Спасибо Томасу, вот решение, которое я искал:
from IPython.core.interactiveshell import InteractiveShell
InteractiveShell.ast_node_interactivity = "all"
https://www.dataquest.io/blog/jupyter-notebook-tips-tricks-shortcuts/
1) Поместите этот код в ячейку Jupyter:
from IPython.core.interactiveshell import InteractiveShell
InteractiveShell.ast_node_interactivity = "all"
2) В Windows следующие шаги делают изменение постоянным. Должно работать для других операционных систем. Возможно, вам придется изменить путь.
C:\Users\your_profile\\.ipython\profile_default
Создайте файл ipython_config.py в profile_defaults со следующим кодом:
c = get_config()
c.InteractiveShell.ast_node_interactivity = "all"
На основе ноутбука
Как ответили другие, размещение следующего кода в ячейке Jupyter Lab или Jupyter Notebook будет работать:
from IPython.core.interactiveshell import InteractiveShell
InteractiveShell.ast_node_interactivity = "all"
Постоянное изменение
Однако, если вы хотите сделать это постоянным и использовать Jupyter Lab, вам нужно будет создать файл конфигурации записной книжки IPython. Для этого выполните следующую команду (НЕ запускайте, если вы используете Jupyter Notebook - подробности ниже):
ipython profile create
Если вы используете Jupyter Notebook, этот файл уже должен быть создан, и нет необходимости запускать его снова. Фактически, выполнение этой команды может перезаписать ваши текущие настройки.
Создав этот файл, как для пользователей Jupyter Lab, так и для пользователей Notebook, добавьте в файл следующий код C:\Users\USERNAME\\.ipython\profile_default\ipython_config.py
:
c.InteractiveShell.ast_node_interactivity = "all"
Я обнаружил, что в этом нет необходимости c = get_config()
в более новых версиях Jupyter, но если это не работает для вас, добавьте c = get_config()
в начало файла.
Для дополнительных опций флага, кроме "all"
перейдите по этой ссылке:https://ipython.readthedocs.io/en/stable/config/options/terminal.html
Вы должны либо распечатать его, либо отобразить его из разных ячеек, либо отобразить его из одной и той же строки - Jupyter отобразит последний результат
a=3
a
out[1]: 3
(other cell)
a+1
out[2]: 4
или же:
a=3
print(a)
print(a+1)
out[3]: 3
4
или же:
a=3
a, a+1
out[4]: (3, 4)