Frage

In Ipython 0.10 war es möglich, ein Skript aus der Befehlszeile auszuführen und dann aus dem interaktiven Modus zu Zugriff auf die Namen im Namespace zu erhalten:

ipython -i some_script.py

%whos
    tom
    dick
    jane

Ich verwende jetzt Python 3.3.2 und Ipython 1.1.0. Irgendwo auf der Linie änderte sich dieses Verhalten. Jetzt bekomme ich:

ipython3 -i some_script.py

%whos
    Interactive namespace empty

Ich muss jetzt Ipython starten, dann führen Sie das Skript aus, damit der Namespace erhalten bleibt:

ipython3 -i
%run some_script.py
%whos
    tom
    dick
    jane

Gibt es eine Befehlszeilenoption oder -technik, die mir das alte Verhalten gibt? ich habe es versucht

ipython3 -i -c "%run some_script.py"

Aber das funktioniert auch nicht.

Ich weiß, es ist eine faule Sache, aber wenn ein Schritt weniger beschleunigt wird, beschleunigen Sie die Debugging -Spins.

War es hilfreich?

Lösung

Reposting als Antwort: Die Namen werden tatsächlich in Ihren interaktiv %whos, Es heißt also, dass der Namespace leer ist, obwohl dies nicht der Fall ist. Wenn Sie versuchen, die Namen zu verwenden, sollten sie normal funktionieren.

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