Speichern eines Zustands des Programms, um es zu ermöglichen wieder aufgenommen werden
Ich mal eine Python-Programme, die eine lange Zeit dauern, zu laufen, und ich möchte in der Lage sein, um den Zustand sichern und später fortsetzen. Hat jemand eine clevere Art zu sparen der Staat entweder alle x Sekunden oder wenn Sie das Programm beenden?
InformationsquelleAutor Dean Barnes | 2011-04-06
Du musst angemeldet sein, um einen Kommentar abzugeben.
Alle deine "Status" - Daten an einem Ort und benutzen einen Gurke.
Wie finde ich alle meine "Zustand" - Daten? Das ist nicht die direkte Antwort auf die Frage, wie ich finde.
Er bedeutet, zu sammeln, alle Daten, die Sie care über die/alle die Daten, die Sie benötigen würden, um starten Sie den Prozess. Sie sind im Grunde schreiben Sie Ihre eigenen benutzerdefinierten speichern/laden und mit Gurke, um die speichern-/laden-von der Festplatte ein Teil davon, so finden alle Ihren "Zustand" der Daten ist bis zu Ihnen, es gibt keine Allgemeine Antwort. #lateisbetterthannever
InformationsquelleAutor Andrew White
Wenn Sie möchten, speichern alles, einschließlich der gesamten namespace und die code-Zeile die derzeit ausgeführt werden, um neu gestartet werden zu jeder Zeit, es ist nicht ein standard-Bibliothek Modul zu tun.
Als ein weiteres Plakat sagte, die pickle-Modul sparen kann so ziemlich alles in eine Datei und dann laden Sie es wieder, aber Sie hätten gezielt, Ihr Programm entwerfen, um das pickle-Modul (d.h. speichern Sie Ihren "Staat" - einschließlich der Variablen, etc-in einer Klasse).
InformationsquelleAutor Garrett Berg
Wenn Sie ok mit OOP, erwägen, eine Methode für jede Klasse, die die Ausgabe eines serialisierten version ( mit Gurke ) zu Datei. Dann fügen Sie eine zweite Methode zum laden in die Instanz die Daten, und wenn die eingelegte Datei ist dort rufen Sie die load () - Methode anstelle der Verarbeitung.
Ich benutze diesen Ansatz für die ML und es wirklich Samen bis mein workflow.
InformationsquelleAutor daymos
In der traditionellen programmieransatz die offensichtliche Weg, um zu sparen Zustand der Variablen oder Objekte nach einem gewissen Punkt der Ausführung ist die Serialisierung.
Also, wenn Sie wollen, um das Programm auszuführen, das nach einigen schweren bereits berechneten Zustand, den wir brauchen, um zu beginnen, nur von der Deserialisierung Teil.
Diese Schritte werden meist erforderlich meist in data science Modellierung, wo wir laden Sie ein riesiges CSV oder einige andere Daten-und Rechen -, und wir wollen nicht auf neu berechnen, jedes mal, wenn wir ein Programm ausführen.
http://jupyter.org/ - Ein tool, mit dem diese Serialisierung/Deserialisierung automatisch, ohne dass Sie dabei jede manuelle Arbeit.
Alles, was Sie tun müssen, ist, tun, ausführen, die einen ausgewählten Bereich Ihres python-code lassen Sie uns sagen, Zeile 10-15, die abhängig von den zuvor genannten Linien 1-9. Jupyter speichert den Status 1-9 für Sie. Entdecken Sie ein tutorial und probiere es aus.
InformationsquelleAutor Santosh Ksl