현재 가장 가까운 반복문(while, for) 하나를 바로 종료하고,
그 다음 줄로 이동.
for i in range(5):
if i == 3:
break
print(i)
print("for문 끝")
실행결과
0
1
2
for문 끝
현재 반복문의 남은 부분을 건너뛰고,
다음 반복으로 넘어감.
for i in range(5):
if i == 3:
continue
print(i)
print("for문 끝")
실행결과
0
1
2
4
for문 끝
함수(혹은 메서드) 전체를 바로 종료하고,
값을 돌려줌(아무 값도 없으면 None).
def func():
for i in range(5):
if i == 3:
return
print(i)
print("for문 끝") # 여긴 실행 안 됨
func()
print("함수 끝")
실행결과
0
1
2
함수 끝
파이썬 프로그램 자체를 종료시킴
함수, 반복문, 어떤 코드가 남아 있어도 전부 즉시 종료
import sys
for i in range(5):
if i == 3:
sys.exit()
print(i)
print("for문 끝") # 실행되지 않음
실행결과
0
1
2
문법적으로 코드가 들어가야 하는데,
실제로는 아무 동작도 시키고 싶지 않을 때 사용
병풍
x = 10
if x > 5:
pass # 나중에 작성할 예정
else:
print("5 이하")
실행결과
아무것도 안나옴
제어문 | 반복문 어디까지 | 함수 어디까지 | 재귀(다단 호출) |
---|---|---|---|
break |
한 반복문 | 함수 안에서는 반복문만 | 반복문만 빠져나감, 함수와 재귀는 계속 |
continue |
한 반복문 | 함수 안에서는 반복문만 | 반복문 현재 반복만 건너뜀 |
return |
반복문, 함수 모두 즉시 종료 | 함수 전체 종료 | 현재 함수(한 단계)만 즉시 종료, 상위 호출은 영향 없음 |
exit |
전체 프로그램 종료 | 전체 프로그램 종료 | 전체 프로그램 종료 |
pass |
영향 없음(아무 동작 안 함) | 영향 없음(아무 동작 안 함) | 영향 없음(아무 동작 안 함) |