Search code examples
pythonloopsexceptiontry-except

How to retry after exception?


I have a loop starting with for i in range(0, 100). Normally it runs correctly, but sometimes it fails due to network conditions. Currently I have it set so that on failure, it will continue in the except clause (continue on to the next number for i).

Is it possible for me to reassign the same number to i and run through the failed iteration of the loop again?


Solution

  • Do a while True inside your for loop, put your try code inside, and break from that while loop only when your code succeeds.

    for i in range(0,100):
        while True:
            try:
                # do stuff
            except SomeSpecificException:
                continue
            break