Wie wird die volle Ausgabe in Jupyter angezeigt, nicht nur das letzte Ergebnis?
114
Ich möchte, dass Jupyter die gesamte interaktive Ausgabe druckt, ohne auf das Drucken zurückgreifen zu müssen, nicht nur das letzte Ergebnis. Wie es geht?
Es ist nicht sehr oft, aber in der Tat gibt es eine Konfigurationsoption verwendet , die dies tun sollen - Satz InteractiveShell.ast_node_interactivityauf 'all'in der Konfigurationsdatei Kernel IPython .
Thomas K
Danke Thomas, das habe ich gesucht :)
mbh86
Es existiert ! ! !
vasili111
Antworten:
177
Dank Thomas ist hier die Lösung, nach der ich gesucht habe:
Als Referenz sind die Optionen dafür 'all', 'none', 'last' und 'last_expr'. Der Unterschied zwischen 'last' und 'last_expr': Wenn Ihre Zelle beispielsweise mit einer Schleife endet, die einen Ausdruck enthält, zeigt 'last' die Ergebnisse dieses Ausdrucks in jeder Iteration der Schleife an. 'last_expr' (Standardeinstellung) zeigt dies nicht an: Es wird nur das Ergebnis eines bloßen Ausdrucks am Ende der Zelle angezeigt.
Thomas K
1
Holy Moly ... diese Funktion ist ein Killer.
flow2k
Das neue (ish) last_expr_or_assignist großartig für Demos! Sie müssen dasselbe Element nicht mehr mehrmals erneut eingeben, um es auch zum Drucken zu bringen.
2) In Windows wird die Änderung durch die folgenden Schritte dauerhaft. Sollte für andere Betriebssysteme funktionieren. Möglicherweise müssen Sie den Pfad ändern.
C:\Users\your_profile\\.ipython\profile_default
Erstellen Sie eine ipython_config.py-Datei in den profile_defaults mit dem folgenden Code:
c = get_config()
c.InteractiveShell.ast_node_interactivity ="all"
Wenn Sie dies jedoch dauerhaft machen und Jupyter Lab verwenden möchten, müssen Sie eine IPython-Notebook-Konfigurationsdatei erstellen. Führen Sie dazu den folgenden Befehl aus ( NICHT ausführen, wenn Sie Jupyter Notebook verwenden - weitere Details siehe unten):
ipython profile create
Wenn Sie Jupyter Notebook verwenden, sollte diese Datei bereits erstellt worden sein und muss nicht erneut ausgeführt werden. Tatsächlich kann das Ausführen dieses Befehls überschrieben werden Ihre aktuellen Einstellungen .
Fügen Sie nach dem Erstellen dieser Datei für Jupyter Lab- und Notebook-Benutzer den folgenden Code zur Datei hinzu C:\Users\USERNAME\\.ipython\profile_default\ipython_config.py:
c.InteractiveShell.ast_node_interactivity ="all"
Ich habe festgestellt, dass c = get_config()in den neueren Versionen von Jupyter keine Notwendigkeit besteht , aber wenn dies bei Ihnen nicht funktioniert, fügen Sie die hinzuc = get_config() am Anfang der Datei hinzu.
InteractiveShell.ast_node_interactivity
auf'all'
in der Konfigurationsdatei Kernel IPython .Antworten:
Dank Thomas ist hier die Lösung, nach der ich gesucht habe:
quelle
last_expr_or_assign
ist großartig für Demos! Sie müssen dasselbe Element nicht mehr mehrmals erneut eingeben, um es auch zum Drucken zu bringen.https://www.dataquest.io/blog/jupyter-notebook-tips-tricks-shortcuts/
1) Platzieren Sie diesen Code in einer Jupyter-Zelle:
2) In Windows wird die Änderung durch die folgenden Schritte dauerhaft. Sollte für andere Betriebssysteme funktionieren. Möglicherweise müssen Sie den Pfad ändern.
Erstellen Sie eine ipython_config.py-Datei in den profile_defaults mit dem folgenden Code:
quelle
Pro Notebook-Basis
Wie andere geantwortet haben, funktioniert das Einfügen des folgenden Codes in eine Jupyter Lab- oder Jupyter Notebook-Zelle:
Ständiger Wechsel
Wenn Sie dies jedoch dauerhaft machen und Jupyter Lab verwenden möchten, müssen Sie eine IPython-Notebook-Konfigurationsdatei erstellen. Führen Sie dazu den folgenden Befehl aus ( NICHT ausführen, wenn Sie Jupyter Notebook verwenden - weitere Details siehe unten):
Wenn Sie Jupyter Notebook verwenden, sollte diese Datei bereits erstellt worden sein und muss nicht erneut ausgeführt werden. Tatsächlich kann das Ausführen dieses Befehls überschrieben werden Ihre aktuellen Einstellungen .
Fügen Sie nach dem Erstellen dieser Datei für Jupyter Lab- und Notebook-Benutzer den folgenden Code zur Datei hinzu
C:\Users\USERNAME\\.ipython\profile_default\ipython_config.py
:Ich habe festgestellt, dass
c = get_config()
in den neueren Versionen von Jupyter keine Notwendigkeit besteht , aber wenn dies bei Ihnen nicht funktioniert, fügen Sie die hinzuc = get_config()
am Anfang der Datei hinzu.Für weitere Flaggen andere Optionen als
"all"
, besuchen Sie diesen Link: https://ipython.readthedocs.io/en/stable/config/options/terminal.html#configtrait-InteractiveShell.ast_node_interactivityquelle