Identify which iteration you are on in a loop in python

前端 未结 5 585
走了就别回头了
走了就别回头了 2020-12-11 15:33

Basically I would like to be able to tell when I\'m on the Nth item in a loop iteration. Any thoughts?

d = {1:2, 3:4, 5:6, 7:8, 9:0}

for x in d:
    if last         


        
5条回答
  •  刺人心
    刺人心 (楼主)
    2020-12-11 16:10

    Use enumerate:

    #!/usr/bin/env python
    
    d = {1:2, 3:4, 5:6, 7:8, 9:0}
    
    # If you want an ordered dictionary (and have python 2.7/3.2), 
    # uncomment the next lines:
    
    # from collections import OrderedDict
    # d = OrderedDict(sorted(d.items(), key=lambda t: t[0]))
    
    last = len(d) - 1
    
    for i, x in enumerate(d):
        if i == last:
            print i, x, 'last'
        else:
            print i, x
    
    # Output:
    # 0 1
    # 1 3
    # 2 9
    # 3 5
    # 4 7 last
    

提交回复
热议问题