Befehlszeilenoptionen für IPython * -Skripte *?
Oft werde ich gefragt, zum Debuggen von Python-Skripte, die von anderen geschrieben. Ich möchte senden Sie diese Skripte, um IPython so wird es drop in ein IPython-shell an der Stelle das Skript fehlschlägt.
Leider, ich kann nicht einen Weg finden, um zu senden (erforderlich) Kommandozeilen-Optionen, welche benötigt werden durch die Skripte.
IPython meint alles ist für IPython, wenn ich übergeben Sie das Skript und seine Optionen, wie:
ipython <script_name> <script_options>
Gibt es eine Lösung oder einen workaround?
InformationsquelleAutor der Frage JS. | 2010-11-09
Du musst angemeldet sein, um einen Kommentar abzugeben.
InformationsquelleAutor der Antwort dr jimbob
InformationsquelleAutor der Antwort Aston M.
Ich weiß, es ist eine bereits akzeptierte Lösung, aber in der letzten version der ipython das funktioniert nicht. Hier ist ein Ausschneiden und einfügen der Befehl, den ich verwenden, um tornado-tests mit --autoreload
Dies ist mit ipython .11.
InformationsquelleAutor der Antwort Jon Haddad
Einfaches Beispiel hier.
script.py
shell:
InformationsquelleAutor der Antwort Parag Tyagi -morpheus-
Viele Aspekte von IPython das Verhalten gesteuert werden kann-über die Einstellungen in der Benutzer-IPython config-Dateien, die in der Regel in
~/.ipython/
. Einem Benutzer können mehrere profile, die jeweils mit unterschiedlichen Einstellungen von der config-Parameter. Jedes Profil hat seine Einstellungen in einem separaten Ordner in der.ipython
Ordner. Das Standard-Profil ist inprofile_default
, und die Haupt-Datei, in der es für die Anpassung Verhalten istipython_config.py
. Standardmäßig, es ist fast vollständig, kommentiert, mit kommentierten Zeilen zeigen die config-Variablen und deren Standard-Einstellungen. Kommentieren oder einfügen von Zeilen, das Verhalten zu ändern.Ändern, wie IPython verhält sich am Ende ein Skript ausführen, verwenden Sie:
Dann, wenn das Skript endet (oder wirft eine exception), IPython läuft weiter und präsentieren Ihnen eine Eingabeaufforderung. Dies ist das gleiche Verhalten wie
ipython -i
.Ich diese Einstellung in meinem Standard-Profil, denn dies ist die Art, wie ich immer wollen IPython zu Verhalten. Wenn das nicht der Fall für Sie, könnten Sie ein Profil erstellen, mit diesem Verhalten nur zu benutzen, wenn Sie möchten dieses Verhalten. Oder einfach nur halten mit der (offenbar undokumentierte)
-i
option.IPython Dokumentation ist hier verfügbar: Einführung in die IPython-Konfiguration — IPython Dokumentation, mit der
force_interact
option hier beschrieben: Terminal IPython-Optionen — IPython Dokumentation.InformationsquelleAutor der Antwort Tom Loredo