Bearbeiten einer Funktion in Python IDLE
Was sind die Möglichkeiten, Sie zu Bearbeiten eine Funktion definiert, die in der Umgebung der Python-IDLE (oder Konsole)?
Du musst angemeldet sein, um einen Kommentar abzugeben.
Was sind die Möglichkeiten, Sie zu Bearbeiten eine Funktion definiert, die in der Umgebung der Python-IDLE (oder Konsole)?
Du musst angemeldet sein, um einen Kommentar abzugeben.
Kurze Antwort: Nein. Lange Antwort: Wenn du die readline-Unterstützung aktiviert ist, können Sie verwenden Sie die up-Pfeil, um die "Neudefinition" es Zeile für Zeile.
War ich auf der Suche nach einer Möglichkeit, diese selbst zu tun, und ich bin traurig, dass es nicht möglich ist, aber ich werde teilen, aber eine schnelle Abhilfe, die ich verwende.
Statt der Festlegung der
myFunction()
in der Konsole definiere ich es in eine DateimyFile.py
. In der Konsole habe ich dann importieren:Ich dann einen Zeiger auf die Funktion (im Fall von langen Dateinamen), etwa so:
Wann immer ich will zu ändern, myFunction, ich Tue es in myFile.py und laden Sie dann das Modul:
Nichts zu extravagant, aber es hilft mir durch.
Können Sie Rindfleisch bis Python REPL einiges, auch Aufruf Ihre Lieblings-editor von ihm. Wenn Sie ein terminal mit Maus-Unterstützung (wie üblich in X) oder ein Bildschirm, die Sie gerade Blättern Sie bis zu der letzten definition einer Funktion, eine Kopie der Quelle, den editor aufrufen und einfügen. Bearbeiten Sie, um zu schmecken, ausführen.
Können Sie die inspect-Modul, um den aktuellen source-code und dann die Funktion neu definieren:
Könnten Sie sogar mit python string-Methoden, um es zu ändern, und verwenden Sie dann
exec
um die Funktion neu definieren. Allerdings würde ich überlegen, diese schlechten Stil.OSError: could not get source code