コードを自己修復可能にする問題があります。例:CSVからVerticaデータベースにデータをロードする方法1を実行します。データベースの行数とCSVファイルの行数が同じかどうかを確認する別の方法2があります。行数が一致しない場合は、クエリを呼び出した場所からメソッド2を呼び出して、CSVからデータベースにデータをロードすることを考えていました。Pythonでチェックポイントを設定してランタイム状態をキャッチする
私はこの問題のチェックポイント戦略を考えていました。エラーが通常発生するコード内のいくつかのポイントを維持し、他のポイントでそれらを呼び出すようにします。
私はすでにPythonでpickleモジュールを使用しようとしましたが、pickleはオブジェクト、クラス、変数などを保存することしかできないので、実際にメソッドを実行できる場所を保存できません。
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
が、私は私のコードは、マンゴーの方法は、リンゴのメソッドを呼び出したときに、それは「マップル」のみの印刷のポイントから実行する必要がありますように実行したい:
私はいくつかのデモコードを提供してきました。メソッド全体を実行してはいけません。
私はこの問題を解決する方法についていくつかの洞察を提供してください。事前に
おかげ