是否有优雅的Pythonic方式来计算处理数据?

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)

Mar*_*ein 5

是的,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通过缺省.

  • 传递1作为第二个参数. (2认同)