Frage

Ich bin kürzlich dazu übergegangen, IPython-Notebooks als Teil meines Workflows zu verwenden.Es ist mir jedoch nicht gelungen, eine Möglichkeit zu finden, .py-Dateien in die einzelnen Zellen eines geöffneten IPython-Notizbuchs zu importieren, damit sie bearbeitet, ausgeführt und dann gespeichert werden können.Kann das gemacht werden?

Ich habe gefunden Das in der Dokumentation, die mir erklärt, wie ich .py-Dateien als neue Notizbücher importieren kann, aber das bleibt hinter dem zurück, was ich erreichen möchte.

Für Vorschläge wäre ich sehr dankbar.

War es hilfreich?

Lösung

BEARBEITEN:Ab IPython 3 (jetzt Jupyter -Projekt) verfügt das Notebook über einen Texteditor, der als bequemere Alternative zum Laden/Bearbeiten/Speichern von Textdateien verwendet werden kann.

Mit dem Magic-Befehl kann eine Textdatei in eine Notebook-Zelle geladen werden %load.

Wenn Sie eine Zelle ausführen, die Folgendes enthält:

%load filename.py

der Inhalt von filename.py wird in die nächste Zelle geladen.Sie können es wie gewohnt bearbeiten und ausführen.

Um den Zellinhalt wieder in einer Datei zu speichern, fügen Sie den Zellzauber hinzu %%writefile filename.py am Anfang der Zelle und führen Sie sie aus.Beachten Sie, dass bereits eine Datei mit demselben Namen vorhanden ist Es wird stillschweigend überschrieben.

Um die Hilfe für jeden magischen Befehl anzuzeigen, fügen Sie a hinzu ?:wie %load? oder %%writefile?.

Für eine allgemeine Hilfe bei Magic -Funktionen Typ " %Magic" für eine Liste der verfügbaren magischen Funktionen, verwenden Sie %LSMAGIC.Geben Sie für eine Beschreibung eines von ihnen %Magic_Name ein?'%CD?'.

Siehe auch: Magische Funktionen aus den offiziellen IPython-Dokumenten.

Andere Tipps

Zum Schreiben/Speichern

%%writefile myfile.py

  • Zelleninhalte in myfile.py schreiben/speichern (verwenden Sie -a Anhängen).Noch ein Alias: %%file myfile.py

Laufen

%run myfile.py

  • Führen Sie myfile.py aus und geben Sie die Ergebnisse in der aktuellen Zelle aus

Zum Laden/Importieren

%load myfile.py

  • Laden Sie „import“ myfile.py in die aktuelle Zelle

Für mehr Magie und Hilfe

%lsmagic

  • Listen Sie alle anderen coolen Cell Magic-Befehle auf.

%COMMAND-NAME?

  • um Hilfe bei der Verwendung eines bestimmten Befehls zu erhalten.d.h. %run?

Notiz

Neben den magischen Zellbefehlen ist IPython Notebook (jetzt Jupyter Notebook) so cool, dass Sie jeden Unix-Befehl direkt aus der Zelle verwenden können (dies entspricht auch der Verwendung von %%bash Zellmagie-Befehl).

Um einen Unix-Befehl aus der Zelle auszuführen, stellen Sie Ihrem Befehl einfach Folgendes voran ! markieren.Zum Beispiel:

  • !python --version Sehen Sie sich Ihre Python-Version an
  • !python myfile.py Führen Sie myfile.py aus und geben Sie die Ergebnisse in der aktuellen Zelle aus, genau wie %run (siehe den Unterschied zwischen !python Und %run in den Kommentaren unten).

Siehe auch dieser nbviewer zur weiteren Erläuterung mit Beispielen.Hoffe das hilft.

Ziehen Sie eine Python-Datei in die IPYTHON-Notebooks "Home" -Notebücher-Tabelle auf Hochladen.Dadurch wird ein neues Notebook mit nur einer Zelle erstellt, die Ihren .py-Dateiinhalt enthält

Andernfalls kopieren / einfügen von Ihrem Lieblings-Editor;)

Ich habe es zufriedenstellend gefunden, LS und CD innerhalb von iPython Notebook zu verwenden, um die Datei zu finden.Geben Sie dann Cat Your_File_name in die Zelle ein, und Sie erhalten den Inhalt der Datei zurück, die Sie dann als Code in die Zelle einfügen können.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top