For Loop - Iterator increasing by 1
本问题已经有最佳答案,请猛点这里访问。
我一直在学习Python,但是我来自Java和Java的背景,你可以设置迭代器在每个循环中增加或减少的值。例如,可以说
从我在Python教程中看到的内容来看,for循环是不变的,它遍历每个整数,从一个开始值到一个结束值,每次增加一个。有没有一种方法可以操作python for循环来为迭代器设置自己的增加/减少值?
在python中,可以使用以下方法实现相同的效果:
1 2 | >>> range(1, 10, 2) [1, 3, 5, 7, 9] |
见
因此,您的代码
1 2 | for i in range(0, 10, 2): # do_stuff() |
当使用
1 2 3 | for i in range(10): print(i) # 0, 1, ..., 9 |
1 2 3 | for i in range(0, 10, 2): print(i) # 0, 2, ..., 8 |
但通常您只是迭代对象中的项,而不是索引。
1 2 3 4 | lst = [0, 1, 2, 3] for element in lst: print(element) # 0, 1, 2, 3 |
但是,如果您的对象支持切片(如列表一样),则很容易获取其他每个成员。
1 2 3 4 | lst = [0, 1, 2, 3] for element in lst[::2]: print(element) # 0, 2 |
如果您想了解更多关于这个语法的信息,可以使用谷歌的"用python列出切片"。