在Python 3中,在foreach循环上工作。问题是我想跳过每X个项目。有没有一种方法可以定义步长值?我知道对于常规的for循环,您只能说for x in range(0,10,2)
,但我认为在foreach中是不可能的。
答案 0 :(得分:1)
您可以使用islice
:
from itertools import islice
for x in islice(lst, 0, None, step):
print(x)
这会跳过step - 1
个项目。
答案 1 :(得分:1)
python中默认的for循环实际上是一个foreach循环,它只能对对象进行迭代。 Python没有像for(i=0;i<n;i++)
这样的循环。范围是一个可迭代的对象,与列表和元组等相同。如上所述,可以在定义范围时设置步骤,但是如果要与其他可迭代对象一起设置步骤,则可以使用切片
my_list = [1, 2, 3, 4]
for item in my_list[::2]:
print(item, end=' ') # output: 1 3