Ja, es ist möglich und einfach, es wird (meistens) in IPython Core für 2.0 sein. Ich würde vorschlagen, diese Beispiele vorerst zu betrachten.
[bearbeiten]
$ jupyter nbconvert --to notebook --execute original.ipynb --output=new.ipynb
Es ist jetzt in Jupyter NbConvert. NbConvert enthält eine Reihe von Preprocessors, die standardmäßig deaktiviert sind. Zwei davon ( ClearOutputPreprocessorund ExecutePreprocessor) sind von Interesse. Sie können sie entweder in Ihren (lokalen | globalen) Konfigurationsdateien über c.<PreprocessorName>.enabled=True(Großbuchstaben, die Python sind) oder in der Befehlszeile aktivieren, wobei --ExecutePreprocessor.enabled=Trueder Rest des Befehls wie gewohnt beibehalten wird .
Das --ExecutePreprocessor.enabled=Trueverfügt über einen praktischen --executeAlias, der in der neuesten Version von NbConvert verwendet werden kann. Es kann auf Wunsch mit kombiniert --inplacewerden
Konvertieren Sie beispielsweise nach dem Ausführen des Notebooks ohne Kopf in HTML:
$ jupyter nbconvert --to=html --execute RunMe.ipynb
Konvertieren in PDF nach dem Entfernen von Ausgaben
$ ipython nbconvert --to=pdf --ClearOutputPreprocessor.enabled=True RunMe.ipynb
Dies funktioniert (natürlich) mit Nicht-Python-Kerneln, indem ein <insert-your-language-here>Kernel erzeugt wird, wenn Sie dies festlegen --profile=<your fav profile>. Die Konvertierung kann sehr lange dauern, bis das Notebook erneut ausgeführt werden muss. Mit dieser --to=notebookOption können Sie die Konvertierung von Notebook zu Notebook durchführen .
Es gibt verschiedene andere Optionen (Zeitüberschreitung, Fehler zulassen, ...), die je nach Anwendungsfall möglicherweise gesetzt / deaktiviert werden müssen. Siehe Dokumentation und natürlich jupyter nbconvert --help, --help-alloder nbconvert Online - Dokumentation für weitere Informationen.
$ ipnbdocttest.py original.ipynb new.ipynbgist.github.com/davidshinn/6110231