break와 continue
break 키워드로 반복문 탈출하기
반복문을 통해 명령문을 반복해서 수행하다보면 프로그램의 흐름상 특정 조건을 만족할 때 더 이상 반복문을 수행하지 않고 그 즉시 해당 반복문을 빠져나가야 할 경우가 생깁니다. 이러한 경우에는 break 키워드를 사용하여 반복 조건에 상관없이 가장 가까운 반복문을 즉시 탈출할 수 있습니다.
다음 예제는 구구단을 5단까지만 출력하도록 한 예제입니다.
예제
for col in range(2, 10):
if col > 5:
break
for row in range(1, 10):
print (col, " x ", row, " = ", col * row)
실행 결과
2 x 1 = 2
2 x 2 = 4
2 x 3 = 6
2 x 4 = 8
2 x 5 = 10
2 x 6 = 12
2 x 7 = 14
2 x 8 = 16
2 x 9 = 18
⁝
5 x 1 = 5
5 x 2 = 10
5 x 3 = 15
5 x 4 = 20
5 x 5 = 25
5 x 6 = 30
5 x 7 = 35
5 x 8 = 40
5 x 9 = 45
위의 예제에서 구구단을 5단까지 출력한 후 변수 col에는 정수 6이 대입됩니다. 따라서 2번 라인의 if 문의 조건식을 만족하게 되어 3번 라인의 break 키워드가 실행됩니다. break 키워드를 만난 프로그램은 그 즉시 가장 가까운 반복문(1번 라인의 for 문)을 탈출하게 되며, 예제 프로그램은 곧바로 종료됩니다.
continue 키워드로 처음으로 되돌아가기
break 키워드가 해당 반복문 전체를 빠져나가게 해준다면, continue 키워드는 해당 루프만을 즉시 종료하고 다음 루프를 실행시킵니다.
즉, continue 키워드는 해당 키워드 바로 다음 명령문부터 해당 반복문의 마지막 명령문까지를 모두 건너뛰고 바로 다음 반복을 실행하는 것입니다.
다음은 1부터 10까지의 정수 중 홀수만을 출력하는 예제입니다.
실행 결과
1 은 홀수입니다.
3 은 홀수입니다.
5 은 홀수입니다.
7 은 홀수입니다.
9 은 홀수입니다.
위의 예제 2번 라인의 if 문에서 변수 n을 2로 나눈 나머지가 0인 경우는 n이 짝수인 경우입니다. 즉, n이 짝수이면 그 즉시 해당 반복을 중지하고 n의 크기를 1 증가시킨 후 2번 라인부터 다시 조건식을 검사하게 됩니다.