2017-03-15 4 views
1

リストの連続した要素が同じでなく、以下のスクリプトを試したときに、下のリストに要素を挿入しようとしています(c5)。この挿入は何とか私を無限ループに連れて行って、プログラムを停止するためにプログラムを手動で終了させなければなりません。誰も私がリストのこの奇妙な動作を理解するのを助けることができる?予めPythonが無限ループのリストに奇妙な動作を挿入する

おかげ

c5=['03-03-2017 00:00', '03-03-2017 00:00', '03-03-2017 00:00', '03-03-2017 00:00', '03-03-2017 00:00', '04-03-2017 00:00', '04-03-2017 00:00', '06-03-2017 00:00', '06-03-2017 00:00', '06-03-2017 00:00', '06-03-2017 00:00', '06-03-2017 00:00', '06-03-2017 00:00', '06-03-2017 00:00', '06-03-2017 00:00', '06-03-2017 00:00', '07-03-2017 00:00', '07-03-2017 00:00', '07-03-2017 00:00', '07-03-2017 00:00', '07-03-2017 00:00', '07-03-2017 00:00', '07-03-2017 00:00', '08-03-2017 00:00', '08-03-2017 00:00', '08-03-2017 00:00', '09-03-2017 00:00', '09-03-2017 00:00', '09-03-2017 00:00', '09-03-2017 00:00', '09-03-2017 00:00', '09-03-2017 00:00', '10-03-2017 00:00'] 

c6=c5 

x=0 
for d in c5: 
    if(x<(len(c5)-1)): 
     if(d != c5[x+1]): 
      c6.insert(x+1,'Hurray') 
      print(x) 
     x+=1 

print(c6) 
+0

'c6 = c5'はコピーを作成しません。 https://nedbatchelder.com/text/names.htmlを参照してください – user2357112

+0

[リストを複製またはコピーするにはどうすればいいですか?](http://stackoverflow.com/questions/2612802/how-to-clone-or-copy -a-list) – TemporalWolf

答えて

1

c5c6参照同じリストオブジェクト起因する:組み合わせでc5スルー

c6=c5 

反復同じリストを参照c6への追加とは、繰り返し処理手段あなたがそれに要素を追加している間、

使用してc6コピーを作成します。

c6 = c5[:] 

を他のオプションの中。

+0

これはうまくいきます。 –

関連する問題