Speichern von Makros in IPython

7

Laut den Dokumenten sollte ich in der Lage sein, ein Makro zu definieren und es zu speichern. Dann wird das Makro beim nächsten Start der IPython-Shell verfügbar sein. Aber es funktioniert nicht:

%Vor%

Wenn ich die IPython-Shell erneut starte, keine Makros:

%Vor%

Weiß jemand, warum das nicht funktioniert?

    
cbare 17.07.2013, 07:06
quelle

3 Antworten

7

Ich fand die Antwort an ein paar dunklen Orten.

Erstens, in der README in $ HOME / .ipython heißt es: "Weitere Informationen zum Konfigurieren von IPython finden Sie unter: ipython config -h "

Dies führt zu einer Reihe von Hilfestellungen, einschließlich der folgenden Hinweise:

%Vor%

OK, großartig. Tat dies. Nun, was Sie in diese Datei schreiben können, erfahren Sie in Konfigurieren der ipython-Befehlszeilenanwendung . Dieses Dokument erwähnt jedoch nicht% store.

Schließlich habe ich meine Antwort in Konfiguration und Anpassung gefunden, darunter Erweiterungen mit IPython , wo Sie den Eintrag storemagic , die besagt:

  

% Speichermagie für geringes Fortbestehen. Speichert Variablen, Aliase   und Makros in der IPython-Datenbank. Um automatisch gespeichert zu speichern   Variablen beim Start, fügen Sie dies zu Ihrer Datei ipython_config.py:

%Vor%

Fügen Sie das hinzu, starten Sie IPython neu und bang! Da sind meine Makros. Cool!

    
cbare 17.07.2013, 19:44
quelle
7

Als Alternative zum Definieren eines Makros in der Shell und dem anschließenden Speichern können Sie das Makro in einer Startdatei definieren. Beispielsweise könnten Sie die folgende Zeile in IPYTHONDIR / profile_default / ipython_config.py einfügen:

%Vor%

Wenn Sie ein Makro für einen magischen Befehl definieren möchten, könnten Sie etwas wie folgt verwenden:

%Vor%

Ich habe nicht herausgefunden, wie man ein Makro für einen magischen Befehl mit Optionen definiert, die Argumente akzeptieren (z. B. 'rn tmp' statt '% run -i tmp' eingeben, um die Datei tmp.py in ipython auszuführen Namensraum).

    
guest 19.06.2014 19:03
quelle
4

Ich muss zugeben, dass das Finden einer guten Dokumentation für ipython manchmal ein Albtraum ist (für die Grundlagen). Es scheint so, als ob diese interaktive Konsole für echte Programmierer programmiert wurde. Zumindest fühle ich das, wenn ich versuche, ein einfaches Problem wie das Speichern einer Variablen für den späteren Gebrauch zu lösen ... etwas, das in Matlab mehr als einfach ist.

Aber um Ihre Frage zu beantworten ... versuchen Sie, ipython zu öffnen, indem Sie einfach ipython eingeben und dann% store -r

schreiben

Es sollte Ihre Daten mit ursprünglichen Namen wiederherstellen. Ich kenne immer noch nicht die Verwendung von Variablen in Dateien speichern oder nur die Variablen wiederherstellen, die ich will. BTw, um die Namen Ihrer gespeicherten Variablen zu kennen, geben Sie% store ein.

Ich hoffe, es funktioniert für Sie.

    
FerYepes 15.08.2013 16:55
quelle

Tags und Links