Ich habe ein Problem, meinen Code selbstheilbarer zu machen. ZB: Ich führe eine Methode 1 aus, um die Daten aus einer CSV in die Vertica-Datenbank zu laden. Ich habe eine andere Methode 2, um zu überprüfen, ob die Anzahl der Zeilen in der Datenbank und die Anzahl der Zeilen in der CSV-Datei gleich ist. Wenn die Anzahl der Zeilen nicht übereinstimmt, dachte ich daran, die Methode 2 von dem Punkt aus aufzurufen, an dem sie die Abfrage aufgerufen hat, um Daten von CSV in die Datenbank zu laden.Checkpointing in Python, um den Laufzeitstatus zu erfassen
Ich dachte über eine Checkpoint-Strategie für dieses Problem nach. wie, einige Punkte im Code beibehalten, wo die Fehler normalerweise auftreten und sie an anderen Punkten erinnern.
Ich habe bereits versucht, Gurke-Modul in Python, aber kam zu wissen, dass Gurke kann nur Objekte, Klassen, Variablen usw. speichern kann nicht den Punkt speichern, wo ich tatsächlich eine Methode ausführen kann.
Ich habe einige Demo-Code zur Verfügung gestellt:
import pickle
class Fruits:
def apple(self):
filehandler= open ("Fruits.obj","wb")
print "apple"
pickle.dump(self,filehandler)
print "mapple"
filehandler.close()
def mango(self):
filehandler = open("Fruits.obj","rb")
print "mango"
obj=pickle.load(filehandler)
obj.apple()
general = Fruits()
general.apple()
general.mango()
the output of above program is:
apple
mapple
mango
apple
mapple
ich mein Code soll so ausgeführt werden, dass, wenn Mango Methode Apfel-Methode aufruft, ist es unter dem Gesichtspunkt der nur print „mapple“ ausführen muss. Es darf nicht die gesamte Methode ausführen.
Bitte geben Sie mir einige Einblicke, wie Sie dieses Problem lösen können.
Dank im Voraus