Bor*_*lis 2 python counter loops
我经常花费很多时间在循环中发生处理步骤.以下方法是我如何跟踪处理的位置.在脚本运行时是否有更优雅的Pythonic计算处理数据的方法?
n_items = [x for x in range(0,100)]
counter = 1
for r in n_items:
# Perform some time consuming task...
print "%s of %s items have been processed" % (counter, len(n_items))
counter = counter + 1
Run Code Online (Sandbox Code Playgroud)
是的,enumerate是为此而建的:
for i,r in enumerate(n_items,1):
# Perform some time consuming task
print('{} of {} items have been processed'.format(i, len(n_items)))
Run Code Online (Sandbox Code Playgroud)
第二个参数确定的初始值i,它是0通过缺省.