私は、データベース内の500件のレコードを持っていると私は辞書要素のPythonのリストにそれらのすべてをロードしています。(25キーと値のペア)トラバースPythonのリスト
私はすべての辞書の要素を横断メソッドを呼び出していますリストを作成し、各レコードに対して何らかのアクションを実行します。トラバース中に、私は要素の半分を横断した後、ロジックがメソッドを終了し、次の半分のために再び再起動することに気付きました。
例として入れようとしました。
例を(それが不可能であるように私は、正確なコードをコピーすることはできません):
def loadrec():
reading from database and appending rows to a global list(mylist)
def myrun():
print "****** Execution Started **********"
for row in mylist:
doing some operations and printing a string
if __name__=="__main__":
i=0
while (i>=0): #This never ends(to make the script run forever)
loadrec()
myrun()
print "****** Execution Ended ************"
Result:
****** Execution Started **********
printed 250 records
****** Execution Ended ************
****** Execution Started **********
printed 125 records
****** Execution Ended ************
****** Execution Started **********
printed 62 records
****** Execution Ended ************
****** Execution Started **********
printed 31 records
****** Execution Ended ************
****** Execution Started **********
printed 15 records
****** Execution Ended ************
****** Execution Started **********
printed 7 records
****** Execution Ended ************
****** Execution Started **********
printed 1 record
****** Execution Ended ************
私はわからない、それは、全レコードの半分しかたびに処理している理由。 最後に、すべてのレコードを処理しています。
私はpythonリストの最大サイズまたはメモリに問題があるかどうかを確認しようとしましたが、どれも考えられるシナリオではありません。
理由が何であったかのヒントを知ってうれしいです。
コードに問題がありますが、コードを表示することはできませんが、問題を特定することはできますか?困難になる。われわれが知っている限り、リストの途中でブレーク条件を明示的に記述しています。ありそうもないけど、どうすればわかるの? –