Re: [问题] for loop 的 index 存取问题

楼主: jlhc (H)   2018-06-26 15:32:48
※ 引述《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 应该可以解决你的问题.
作者: henry8168 (番薯猴)   2018-06-26 15:59:00
这样可以,就是会多几次不做事的循环。我大概知道怎么写了,感谢!
楼主: jlhc (H)   2018-06-26 18:54:00
如果希望有效利用减少实行次数的话 建议用while实作
作者: wennie0433   2018-06-26 19:57:00
range 可以加step range(0,5,2)

Links booklink

Contact Us: admin [ a t ] ucptt.com