2017-01-03 7 views
-1

list.insertメソッドを使用して問題があります。下のコードを見ることができます。リストの特定の場所に要素を挿入します。

z=[1,9,6,5,5,3,4,6] 
y=['1','4','9','7','6','5','5','1','5','0','3','3','4','1','6','0'] 
z.insert(z[0],int(y[1])) 
print(z) 
[1, 4, 9, 6, 5, 5, 3, 4, 6] 
z.insert(z[2],int(y[3])) 
print(z) 
[1, 4, 9, 6, 5, 5, 3, 4, 6, 7] 

なぜ7は6の後に、9の後にはなりませんか? ありがとうございます!

答えて

1
z=[1,9,6,5,5,3,4,6] 
y=['1','4','9','7','6','5','5','1','5','0','3','3','4','1','6','0'] 
z.insert(z[0],int(y[1])) #grabs 1 from z, and 4 from y 
print(z) 
[1, 4, 9, 6, 5, 5, 3, 4, 6] 
z.insert(z[2],int(y[3])) #grabs index 2 from z which is 9, 
          #and insert will insert into the last element 
          #if the index is out of range 
print(z) 
[1, 4, 9, 6, 5, 5, 3, 4, 6, 7] 
+0

彼のコードは結果を再割り当てしません。その答えの最後のコメントはどうしてですか? – Barmar

1

z[2]は、9である。

[1, 4, 9, 6, 5, 5, 3, 4, 6] 
    ^

9番目のインデックス(6以降)に移動します。

関連する問題