Re: [問題] for loop 的 index 存取問題

看板Python作者 (H)時間6年前 (2018/06/26 15:32), 編輯推噓1(103)
留言4則, 3人參與, 6年前最新討論串2/3 (看更多)
※ 引述《henry8168 (番薯猴)》之銘言: : 剛發現一件我誤會很久的事情,假設我有段程式碼: : for i in range(5): : print(i) : i += 1 : 我執行的預期結果是 : 0 : 2 : 4 : 結果卻是 : 0 : 1 : 2 : 3 : 4 : https://imgur.com/V0glZVM.png
: 這跟 C++ 的理解真的差很多,請問我該怎麼讓它出現預期的結果? : 因為這本來是寫在判斷某個條件發生時,要 iterator 跳過下次的執行用的。 : 寫 next(i) 無法達到目的,因為 i 是 int type。 : 請教各位大神。 for i in range(5): if condition: continue print(i) 判斷後使用 continue 應該可以解決你的問題. -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 117.104.191.210 ※ 文章網址: https://www.ptt.cc/bbs/Python/M.1529998373.A.3DC.html

06/26 15:59, 6年前 , 1F
這樣可以,就是會多幾次不做事的迴圈。我大概知道怎麼
06/26 15:59, 1F

06/26 15:59, 6年前 , 2F
寫了,感謝!
06/26 15:59, 2F

06/26 18:54, 6年前 , 3F
如果希望有效利用減少實行次數的話 建議用while實作
06/26 18:54, 3F

06/26 19:57, 6年前 , 4F
range 可以加step range(0,5,2)
06/26 19:57, 4F
文章代碼(AID): #1RCUmbFS (Python)
文章代碼(AID): #1RCUmbFS (Python)