Ich habe Code in einer .ipynb-Datei und habe ihn so weit gebracht, dass ich die "interaktive" Funktion von IPython Notebook nicht mehr wirklich benötige. Ich möchte es einfach direkt über eine Mac Terminal-Befehlszeile ausführen.
Wenn dies nur eine .py-Datei wäre, könnte ich python filename.py einfach über die Befehlszeile ausführen. Gibt es etwas Ähnliches für eine .ipynb-Datei?
python
jupyter-notebook
ipython
nbconvert
Vincent
quelle
quelle
input
Aussagen in meinem Ipython-Notizbuch, und es scheint Probleme damit zu habenAntworten:
Über die Befehlszeile können Sie mit diesem Befehl ein Notizbuch in Python konvertieren:
https://github.com/jupyter/nbconvert
Möglicherweise müssen Sie das Python Mistune- Paket installieren :
quelle
ipython nbconvert
ist zugunsten von jupyter nbconvert--ExecutePreprocessor.timeout=600
.jupyter-nbconvert --execute 03-Print\ Formatting\ with\ Strings.ipynb
Mit nbconvert können Sie Notizbücher mit dem
--execute
Flag ausführen :Wenn Sie ein Notizbuch ausführen und ein neues Notizbuch erstellen möchten, können Sie Folgendes hinzufügen
--to notebook
:Oder wenn Sie das vorhandene Notebook durch die neue Ausgabe ersetzen möchten :
Da dies ein sehr langer Befehl ist, können Sie einen Alias verwenden:
quelle
--ExecutePreprocessor.timeout=[timeout_in_seconds]
(-1
ohne Einschränkung verwenden).Sie können Ihren gesamten Code aus exportieren
.ipynb
und als.py
Skript speichern . Dann können Sie das Skript in Ihrem Terminal ausführen.Ich hoffe es hilft.
quelle
Führen Sie in Ihrem Terminal ipython aus:
Suchen Sie dann Ihr Skript und legen Sie es dort ab:
quelle
Für neue Version statt:
Sie können jupyter instend von ipython verwenden:
quelle
Update mit zitiertem Kommentar des Autors zur besseren Sichtbarkeit:
Installieren Sie die Runipy-Bibliothek, mit der Sie Ihren Code auf dem Terminal ausführen können
Nachdem Sie einfach Ihren Code kompiliert haben:
Sie können auch Cronjob versuchen. Alle Informationen finden Sie hier
quelle
In meinem Fall war der Befehl, der am besten zu mir passte ,:
Warum? Dieser Befehl erstellt keine zusätzlichen Dateien (genau wie eine
.py
Datei) und die Ausgabe der Zellen wird bei jeder Ausführung des Notizbuchs überschrieben.Wenn du läufst:
quelle
Sie können das
boar
Paket auch verwenden , um Ihr Notizbuch in einem Python-Code auszuführen.Wenn Sie Ihr Notebook aktualisieren, müssen Sie es nicht erneut in eine Python-Datei konvertieren.
Mehr Informationen bei:
https://github.com/alexandreCameron/boar/blob/master/USAGE.md
quelle
Vom Terminal laufen
Das Standardzeitlimit beträgt 30 Sekunden. -1 hebt die Einschränkung auf.
Wenn Sie das Ausgabe-Notizbuch in einem neuen Notizbuch speichern möchten, können Sie das Flag verwenden
--output my_new_nb.ipynb
quelle
Ich hatte das gleiche Problem und fand Papiermühle . Der Vorteil gegenüber den anderen Lösungen besteht darin, dass Sie die Ergebnisse sehen können, während das Notebook ausgeführt wird. Ich finde diese Funktion interessant, wenn das Notebook sehr lange dauert. Es ist sehr einfach zu bedienen:
Es gibt auch andere nützliche Optionen wie das Speichern der Ausgabedatei in Amazon S3, Google Cloud usw. Weitere Informationen finden Sie auf der Seite.
quelle