파이썬 break 기능
반복문 중간에 멈추는 break란?
파이썬을 처음 배우는 분이라면 반복문(for, while)이 끝까지 실행되는 것이 당연하다고 생각할 수 있습니다. 그러나 실제 프로그래밍에서는 반복을 도중에 멈춰야 할 때가 자주 있습니다. 이럴 때 사용하는 것이 바로 break 문입니다.
break는 반복문 내부에서 특정 조건이 참이 되면 바로 반복문 실행을 종료시켜, 그 아래 코드를 계속 진행하도록 도와줍니다. 예를 들어 리스트에서 원하는 값을 찾았을 때, 더는 찾을 필요 없으니 반복을 멈추고 싶을 때 쓸 수 있습니다.
- 이 글을 통해 반복문 내부에서
break를 어떻게 사용하는지, 언제 쓰는지, 자주 하는 실수와 안전한 사용법까지 차근차근 익힐 수 있습니다. - 파이썬 기본 문법(변수, if문, 반복문)만 알고 있으면 문제없이 따라올 수 있습니다.
break의 기본 사용법: 가장 단순한 예제
반복문을 무조건 끝까지 실행하지 않고, 원하는 순간에 멈추는 가장 단순한 예제를 먼저 보겠습니다.
실행 결과
1
2
3
반복문 끝!이 코드는 num이 1부터 5까지 반복되다가, num == 3일 때 break를 만나면 반복문이 바로 종료됩니다. "반복문 끝!"은 반복문이 끝난 뒤 한 번만 출력됩니다.
코드 실행 순서는 다음과 같습니다.
- num = 1 →
print(1)출력,if 1 == 3은 False, 반복 계속 - num = 2 →
print(2)출력,if 2 == 3은 False, 반복 계속 - num = 3 →
print(3)출력,if 3 == 3은 True, break로 반복 종료 - "반복문 끝!" 출력
즉, 3까지만 출력되고 반복문이 멈춥니다.
실전 예제: 특정 값에서 반복문 멈추기
이제 실제 상황에서 특정 값을 만나면 반복을 멈추는 예제를 만들어 봅시다. 예를 들어 사용자가 입력한 숫자 중 0이 나오면 반복을 끝내고 싶을 때 사용할 수 있습니다.
while True:
num = int(input('숫자를 입력하세요 (0을 입력하면 종료): '))
if num == 0:
print('0을 입력해서 반복 종료!')
break
print(f"입력한 숫자: {num}")
print('프로그램 종료')이 코드는 while True로 무한 반복하다가, 사용자가 0을 입력하면 break로 반복문을 벗어나 "프로그램 종료"를 출력합니다. 0이 아닌 숫자는 그대로 화면에 출력됩니다.
for문에서 break의 동작 순서 이해하기
for문에서도 break는 마찬가지로 동작합니다. 리스트 등 여러 값 중 특정 값을 찾기 위한 예시를 살펴봅시다
실행 결과
현재 값: 8
현재 값: 5
현재 값: 12
현재 값: 7
0을 만나서 멈춥니다!
검사 끝!]]
0을 만나기 전까지는 현재 값이 출력되다가, 0이 나오면 "0을 만나서 멈춥니다!"와 "검사 끝!"이 출력됩니다.
코드 실행 핵심:
- break를 만나면 해당 반복문의 나머지 코드는 더 실행되지 않음
- 바깥에 있는 다음 코드(여기서는 "검사 끝!")로 이동함
초보자가 자주 하는 break 관련 실수
break를 사용할 때 가장 흔하게 하는 실수는 if 조건을 잘못 주거나, break의 위치를 잘못 두는 것입니다. 대표적인 잘못된 예를 살펴봅니다.
잘못된 예: break가 반복문 바깥에 있으면 오류가 납니다.
잘못된
for i in range(3):
print(i)
break]]
이 코드는 break가 반복문 밖에 있어서 SyntaxError가 발생합니다.
수정한 예: break는 반복문(while, for) 내부에서만 쓸 수 있습
실행 결과
0
1_7]]
또 다른 실수는, 반복 변수의 값이 바뀌지 않아 break 조건이 영원히 참이 안 되거나, while문에서 break 없이 무한 반복이 되는 경우입니다. 항상 break가 조건에 맞춰 실행되는지 점검하세요.
break를 안전하게 사용하는 팁
- 반드시 반복문 내부에서만 사용합니다.
- if와 함께 조건을 명확하게 써서 언제 종료되는지 알 수 있게 합니다.
- 반복문이 종료된 뒤 실행될 코드(반복문 밖에 있는 print 등)를 꼭 넣어두어, break가 제대로 동작했는지 쉽게 확인하세요.
- 무한 반복문(
while True)에서는 break를 사용해 탈출 조건을 명확히 만듭니다.
break 없이 할 수 없는 것?
break 없이도 반복문을 종료할 수 있지만, 복잡한 조건이나 어디서 멈춰야 할지 미리 모르는 경우 break가 훨씬 간결하고 읽기 쉽습니다. 예를 들어, 리스트에서 특정 값을 만나면 멈추게 하고 싶다면 break가 가장 직관적입니다.
핵심 정리와 연습 문제
정리: 파이썬의 break 문은 반복문을 내 뜻대로 중간에 멈추고 싶을 때 꼭 필요한 기능입니다. 반복문 내부에서 조건문과 함께 break를 쓰면, 원하는 값이나 상황에서 반복을 조기 종료할 수 있습니다. break는 while, for 모두에서 사용할 수 있으며, 잘못 사용하면 오류가 나므로 반복문 안에서만 써야 합니다.
연습 문제
- 1부터 100까지 숫자 중에서 처음으로 7의 배수를 만나면 반복을 멈추고, 그 숫자를 출력하는 코드를 작성하세요.
- 사용자에게 계속 숫자를 입력받아, 10이 넘는 값을 입력했을 때만 반복을 종료하는 코드를 만들어 보세요. (힌트: while True와 break 사용)
- 리스트 [2, 4, 6, 9, 12, 15]에서 홀수를 만나면 반복을 멈추고, 그 전까지의 값만 출력하는 코드를 작성해 보세요.
각 문제는 본문에서 설명한 break 사용법을 활용하면 풀 수 있습니다. 직접 풀어보며 실행 결과를 확인해 보세요!