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

作者: henry8168 (番薯猴)   2018-06-26 14:56:52
剛發現一件我誤會很久的事情,假設我有段程式碼:
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。
請教各位大神。
作者: djshen (djshen)   2018-06-26 15:01:00
你寫i in range(5)那當然每次都是從range(5)拿一個出來阿https://docs.python.org/3.5/library/functions.html看看range的文件
作者: andy19960407 (258698)   2018-06-26 15:39:00
可以加上每次跳多少的參數吧
作者: kobe8112 (小B)   2018-06-26 16:58:00
設一個下次要跳過的bool旗標,每次for開頭看旗標,
作者: neil987 (R5大小姐-EX人品崩壞)   2018-06-26 16:58:00
https://goo.gl/yR3qM7 這個給你參考
作者: neil987 (R5大小姐-EX人品崩壞)   2018-06-26 16:59:00
看for 的部分
作者: kobe8112 (小B)   2018-06-26 16:59:00
我是北七,沒看到已經有人回一樣意思的文了XDDD
作者: moyun (莫嫆)   2018-06-27 01:44:00
for i in range(0,6,2):print(i)輸出結果就會是
作者: tmdggyygan (朝聞到,SEX可以)   2018-07-02 11:20:00
初音

Links booklink

Contact Us: admin [ a t ] ucptt.com