wake-up-neo.com

Wie setze ich die Jupyter / IPython-Eingabeaufforderungsnummerierung zurück?

Ich habe gerade mein erstes umfangreiches Python Tutorial mit IPython-Notizbüchern geschrieben. Alles ist gut gelaufen, bis auf viele Tests und das Verschieben von Blöcken. Wie setze ich das In [ ]: Nummerierung? Ich habe versucht, zu beenden und neu zu laden, aber das scheint nicht zu funktionieren.

60
user2651084

Ich denke, der einzige Weg zu dem, was Sie wollen, ist: - 'Kernel> Restart' (Neustart des Kernels) und dann 'Cell> Run All' (Führen Sie das Skript aus).

52
0rhodabasi

Sie können den Kernel zurücksetzen (Verknüpfung: C-m .) und führen Sie das gesamte Notizbuch erneut aus.

Das Beenden und Neuladen funktioniert nicht, da der Code nicht erneut ausgewertet wird.

21
Pascal Bugnion
'Kernel' -> 'Restart & Run All'

Stellen Sie einfach sicher, dass Sie Ihr Notebook gespeichert haben. Sie können auch die Tastaturtaste zum Ausführen dieses Befehls binden/zuweisen.

'Help' -> 'Edit Keyboard Shortcuts'
10
Vlad Bezden

Jeden .ipynb Datei kann in einem Editor geöffnet werden. Alles, was dort geschrieben wird, ist in Klartext (JSON). Für jede Zelle mit dem "cell_type": "code" es gäbe ein anderes Schlüssel-Wert-Paar als "execution_count": <number>. Wie Sie vielleicht erraten haben, ist dies die Nummerierung der Eingabeaufforderung. Wenn das Notizbuch also Code enthält, dessen Ausführung (wie in meinem Fall) einige Zeit in Anspruch nimmt, ist diese Methode zeiteffizient.

Jetzt können Sie entweder die einzelnen execution_count oder schreiben Sie ein einfaches Skript, um die Nummerierung richtig zu machen. Um die Ergebnisse zu überprüfen, aktualisieren Sie einfach das Notizbuch im Browser, ohne den Kernel anzuhalten. Und alles wird Ihren Bedürfnissen entsprechen, auch alle Variablen/geladenen Daten verbleiben in der Umgebung.

7
TrigonaMinima

Wenn Sie die Zahlen selbst entfernen möchten, wird in jeder Zelle In [ ] (anstelle von etwas wie In [247], der von einer früheren Inkarnation des Kernels übrig geblieben ist), verwenden Sie "Cell"> "All Output"> "Clear" (in Jupyter Notebook 5.4.0) oder "Edit"> "Clear All Outputs" (in Jupyter Lab 0.32) .1).

Dadurch werden alle Nummern entfernt, auch wenn Sie gerade ein Notebook betreiben. Die Nummerierung wird nicht auf 1 zurückgesetzt. z.B. Wenn die letzte Zelle, die Sie ausgeführt haben, 18 war, ist die nächste 19.

Wenn Sie dies verwenden, weil Sie Klarheit darüber wünschen, welche Zellen Sie während dieser Ausführung des Kernels ausgeführt haben und welche noch nicht ausgeführt wurden, verwenden Sie "Zelle"> "Alle Ausgaben"> "Löschen" (oder "Bearbeiten") ">" Alle Ausgaben löschen ") unmittelbar nach dem Start (oder Neustart) des Kernels. Dies kann nützlich sein, wenn Sie einen Kernel neu starten oder ein gespeichertes oder dupliziertes Notizbuch öffnen.

Dadurch werden auch alle Ausgaben vom Notebook entfernt.

Vielen Dank an user2651084 in einem vorherigen Kommentar dazu.

1
jjpr

Cell > All Output > Clear Löschen Sie alle In []: - Nummern, aber setzen Sie sie für die nächste Zelle, die Sie ausführen, nicht auf 1 zurück.

Kernel > Restart & Clear Output Starten Sie den Kernel neu, löschen Sie die Ausgabe, löschen Sie die In []: - Nummern und setzen Sie sie auf 1 zurück, und löschen Sie die Ausgabe.

0
Javi12