Skip over a value in the range function in python

前端 未结 7 1006
我在风中等你
我在风中等你 2020-12-04 17:28

What is the pythonic way of looping through a range of numbers and skipping over one value? For example, the range is from 0 to 100 and I would like to skip 50.

Edi

7条回答
  •  难免孤独
    2020-12-04 18:05

    You can use any of these:

    # Create a range that does not contain 50
    for i in [x for x in xrange(100) if x != 50]:
        print i
    
    # Create 2 ranges [0,49] and [51, 100] (Python 2)
    for i in range(50) + range(51, 100):
        print i
    
    # Create a iterator and skip 50
    xr = iter(xrange(100))
    for i in xr:
        print i
        if i == 49:
            next(xr)
    
    # Simply continue in the loop if the number is 50
    for i in range(100):
        if i == 50:
            continue
        print i
    

提交回复
热议问题