在python3的foreach循环中定义步数

时间:2019-12-24 16:46:29

标签: python-3.x for-loop

在Python 3中,在foreach循环上工作。问题是我想跳过每X个项目。有没有一种方法可以定义步长值?我知道对于常规的for循环,您只能说for x in range(0,10,2),但我认为在foreach中是不可能的。

2 个答案:

答案 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