break
makes you get out of the loop even before the end of the iteration. But, in case of nested loop(multi-layered loop) break
only can take you out of the nearest loop.
Now, you can break nested loop with boolean-typed variables which indicates breaking or not to the outer loop.
This is an example of mutiplication tables.
# You need to set breaker variable for boolean to break outer loop.
breaker = False
for i in range(1, 10, 1):
for j in range(1, 10, 1):
if i > 2:
breaker = True # set breaker True
break
print(i , '*', j, '=', i*j)
if breaker == True: # check breaker
break
>>>
1 * 1
1 * 2
1 * 3
1 * 4
1 * 5
1 * 6
1 * 7
1 * 8
1 * 9
2 * 1
2 * 2
2 * 3
2 * 4
2 * 5
2 * 6
2 * 7
2 * 8
2 * 9