计算while循环中的迭代次数

AK4*_*K47 5 python loops python-2.7

Python中有没有办法自动将迭代计数器添加到while循环中?

我想删除这些行count = 0count += 1以下代码片段,但仍然可以计算迭代次数并针对布尔值进行测试elapsed < timeout:

import time

timeout = 60
start = time.time()

count = 0
while (time.time() - start) < timeout:
    print 'Iteration Count: {0}'.format(count)
    count += 1
    time.sleep(1)
Run Code Online (Sandbox Code Playgroud)

use*_*ica 12

最干净的方法可能是将其转换为无限for循环并将循环测试移动到正文的开头:

import itertools

for i in itertools.count():
    if time.time() - start >= timeout:
        break
    ...
Run Code Online (Sandbox Code Playgroud)