2017-03-28 9 views
0

ループのたびに新しいリストを作成したいと思います。ループが実行されるたびにリストに新しい値が設定されるようにします。コードを見てください。Pythonでリストを更新する

pis=[] 
ns=[] 
ps=[] 
for pk in arange(0,1,0.05): 
    #print pk, ':' 
    pis.append(pk) 
    initialize() 
    for t in xrange(10): 
     #a=float(a) 
     sumValue = sum(cmath.exp(g.node[i]['theta'] * cmath.sqrt(-1)) for i in g.nodes_iter()) 
     r = abs(sumValue/g.number_of_nodes()) 
     print r 
     #pis.append(t) 
     ps.append(r) 
     update() 
    k=max(ps) 
    ns.append(k) 



plot(pis, ns) 

ループがpkに対して実行されるたびに最大値を見つけて、その値をns []に格納する必要があります。次回ループが実行されるとき、私は以前のループからのns []値を持つことは望ましくありません。方法はありますか、提案してください。ありがとう

+0

ループの繰り返しごとに実行したいコードは、ループ内に入ります。すべての反復で新しいリストを作成する場合は、ループ内に新しいリストを作成する必要があります。 – user2357112

答えて

0

ちょうどns=[]をループ内で移動してください。

pis=[] 
ps=[] 
for pk in arange(0,1,0.05): 
    ns=[] 
... 

これにより、ループが開始するたびにnsが空のリストになります。