2017-06-14 48 views
0

請比較接近或向下這篇文章試圖教導和幫助我瞭解瞭解一個for循環的例子

作爲一個新手,我有一個非常艱難的時間來了解Julia以下for loop代碼。我相信這應該是其他語言中的相同概念。

我會非常感激有人請詳細向我解釋爲什麼對mylist[3]下面的代碼將23

mylist = [3, 2, 1] 

count=3 
for i in mylist 
    mylist[i]=count 
    count=count+10 
end 

mylist[3] = 23 

如果你知道一個很好的教材/源/課程來幫助我,請讓我知道。

+1

MYLIST [3]是MYLIST陣列的邊界之外。你不能得到mylist [3] = 23。 – PrestonM

+3

這是Julia代碼,而不是Python代碼,所以'mylist [3]'不在界限之外(從1開始索引)。 –

+0

@PrestonM確實如此。請將其複製並粘貼到您的Julia控制檯或I Julia中,然後輸入它即可獲得23. – Daniel

回答

4

只是通過示例。您正在循環訪問mylist的值,因此第一個i爲3.因此mylist[i]=count會生成mylist[3]=3count=count+10更新count13。第二次通過mylist使得mylist[2]=13然後count=23。然後,由於第一輪製作mylist[3]=3,我們在上一輪有i=3,其中設置mylist[i]=count現在是23。因此mylist[3]=23

使用REPL自行穿過它,它會更清晰。像這樣一步一步來理解代碼是一種好方法。

1

第一循環: 計數= 3,從而MYLIST [3] = 3,則計數= 13

第二循環: 計數= 13所以MYLIST [2] = 13然後計算= 23

最終循環: count = 13 mylist [3] = 23 由於mylist中的第三個元素在第一個循環中被更改爲3

這樣你可以獲得23