如何使用For循环一次又一次地循环1到10,直到循环在python中被破坏

时间:2016-01-01 04:24:13

标签: python

我想在这里做的是打印loop indexes 1到10,并且在索引达到值10之后,循环应该从头开始。另外,如果condition 1为真,循环应该被打破。下面的C ++代码表示我想在python中实现的算法。

for(int i=1; i<=10; i++)
{
    if(true) break;     //condition 1

    cout << i;
    if(i == 10) i = 0;
}

2 个答案:

答案 0 :(得分:2)

for i in itertools.cycle(range(10)):
    if whatever: break
    print i

答案 1 :(得分:2)

您可以使用itertools.cycle重复循环迭代:

import itertools
for i in itertools.cycle(range(10)):
    if condition:
        break
    else:
        print(i)

或者你可以用无限循环创建一个生成器:

def numbers(num):
    while 1:
        yield from range(num)

然后使用它:

for i in numbers(10):
    if condition:
        break
    else:
        print(i)