17.2 continue로 코드 실행 건너뛰기

이번에는 continue를 사용하여 일부 코드를 실행하지 않고 건너뛰어 보겠습니다. 다음은 1부터 100까지 숫자 중 짝수만 출력합니다.

continue_for.py

for i in range(1, 101):    # 1부터 100까지 증가하면서 100번 반복
    if i % 2 != 0:         # i를 2로 나누었을 때 나머지가 0이 아니면 홀수
        continue           # 아래 코드를 실행하지 않고 건너뜀
    print(i)

실행 결과

... (생략)
92
94
96
98
100
  • SyntaxError: invalid syntax: continue에는 :(콜론)을 붙이지 않습니다. :을 붙였는지 확인해주세요.

for를 사용하여 1부터 100까지 반복합니다. 그리고 if를 사용하여 i가 홀수이면 continue를 실행합니다(i를 2로 나누었을 때 나머지가 0이면 짝수, 0이 아니면 홀수입니다). 마지막으로 print를 사용하여 i의 값을 출력합니다.

i가 짝수이면 print가 실행되어 숫자가 출력되고, 홀수이면 continue가 실행되어 print를 실행하지 않습니다. 즉, 반복문 안에서 continue를 실행하면 continue 아래의 코드는 실행하지 않고 건너뛴 뒤 다음 반복을 시작합니다.

for뿐만 아니라 while에서도 continue의 동작은 같습니다.

continue_while.py

i = 1
while i <= 100:       # i가 100보다 작거나 같을 때 반복. 1부터 100까지 증가하면서 100번 반복
    i += 1            # i를 1씩 증가시킴
    if i % 2 != 0:    # i를 2로 나누었을 때 나머지가 0이 아니면 홀수
        continue      # 아래 코드를 실행하지 않고 건너뜀
    print(i)

실행 결과

... (생략)
92
94
96
98
100

여기서는 반복 횟수를 정한 뒤 continue를 사용했지만 무한 루프에서 continue를 사용하면 짝수만 계속 출력될 뿐 반복문은 끝나지 않습니다.

다음은 반복문과 continue의 동작을 나타낸 순서도입니다(forrange(1, 101)i <= 100i 증가로 나눌 수 있습니다).

그림 17-2 continue로 코드 실행 건너뛰기
그림 ‎18 2 continue로 코드 실행 건너뛰기