亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

循環遍歷二維數組 Python

循環遍歷二維數組 Python

Go
繁花如伊 2022-06-07 16:32:40
我對某些事情有點困惑,當我想出這段代碼時,我正在循環一個二維數組,只是在試驗:result = [["Lucas","5"],["Tim","2"]]count = 0for line in result:    for item in result[count]:        print(item)        count = count + 1我認為這會做的是給我一個結果,Lucas然后2,因為它會轉到第一項,然后第二個for循環將通過子列表打印result[0][0],但是一旦它到達子列表的第一項,它會將計數增加到 1,這意味著它將result[1][1]在下一個打印,因為它在一個新的范圍內,但是循環隨后將轉到它所在范圍的第二項。但是,這將給出 'Lucas','5' 作為輸出。我想當我改變計數時,我認為我正在改變它循環的范圍。請向我解釋為什么我錯了提前感謝您,并很抱歉沒有很好地解釋這一點。
查看完整描述

3 回答

?
一只斗牛犬

TA貢獻1784條經驗 獲得超2個贊

當你這樣做

for item in result[count]:

該表達式result[count]僅在循環開始時計算一次。每次循環都不會對其進行評估,因此重新分配count對后續迭代沒有影響。它大致相當于:

temp = result[count]
for item in temp:

請記住,您循環使用的值for可能是生成器表達式。這些不能被索引,它們只是計算一系列值。因此,每次都重新評估它們是沒有意義的。


查看完整回答
反對 回復 2022-06-07
?
絕地無雙

TA貢獻1946條經驗 獲得超4個贊

for line in result:

將循環遍歷頂層數組,因此這里有 2 條記錄:["Lucas","5"]然后["Tim","2"]

for item in result[count]:

將循環遍歷 2 條記錄中的每條記錄的每個項目,所以

print(item)

將按順序顯示 4 個項目Lucas, 5, Tim, 2。

不需要計數,它在這里沒有任何用途,并且無論如何都不被任何一個 for 循環使用。


查看完整回答
反對 回復 2022-06-07
?
猛跑小豬

TA貢獻1858條經驗 獲得超8個贊

如果你堅持使用 for 循環,你也可以使用


result = [["Lucas","5"],["Tim","2"]]

count = 0

for line in range(len(result)):

    for item in result[line]:

        print(item)

        count = count + 1

返回:盧卡斯 5 蒂姆 2


查看完整回答
反對 回復 2022-06-07
  • 3 回答
  • 0 關注
  • 564 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號