«   2024/05   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
Archives
Today
Total
관리 메뉴

Code IT

Python - loop ~ else 본문

Python & Django

Python - loop ~ else

Codit 2019. 1. 31. 14:59
# while 이나 for 반복문이 정상적으로 종료되었을 때, 반복을 마쳤다. 라는 
# 내용을 개발자나 사용자에게 알리고 싶을 때 사용할 수 있는 키워드도 있다. 
# 바로 if에서 배웠던, else 가 그것이다.

# 간단한 코드로 살펴보자.

numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]

for number in numbers:
	print(number)
	
print("반복이 정상적으로 종료되었습니다.")

# 위 코드는 반복이 종료되면, 즉시 "반복이 종료되었습니다."를 출력한다.
# 우리가 하고자했던 것과 동일하다.
# 만약 반복문 코드가 아래와 같이 바뀐다면 어떨까?
for number in numbers:
	if number % 5 == 0:
		break
	print(number)
	
print("반복이 정상적으로 종료되었습니다.")

# 위 코드는 반복중인 변수가 5의 배수라면 반복문을 즉시 종료하라는 코드다.
# break가 반복문을 즉시 종료시키는 키워드다.
# 수행결과는? 1 2 3 4 반복문이 정상적으로 종료되었습니다. 로 출력된다.
# 과연, 이 코드가 정상적으로 종료된것이 맞을까? 그렇지 않다. 
# 반복이 진행되어야 할 데이터가 더 있음에도 불구하고 종료되어버렸으니, 
# 비정상적으로 종료된 반복문이다.
# 이 경우에 "반복문이 정상적으로 종료되었습니다." 를 출력하고 싶다면? 아래와 같이 해보자.
for number in numbers:
	if number % 5 == 0:
		break
	print(number)
else:
	print("반복이 정상적으로 종료되었습니다.")

# 위 코드와 아래코드를 실행시켜서 코드와 결과의 차이를 알아보자.
	
for number in numbers:
	print(number)
else:
	print("반복이 정상적으로 종료되었습니다.")	
	
# 차잇점이 보인다면 다행이다.
# 첫 번째 반복문은 비정상적으로 종료되는 반복문이고, 두 번째 반복문은 정상적으로 종료되는 반복문이다.
# else는 정상적으로 종료되는 반복문에서만 실행 된다.

'Python & Django' 카테고리의 다른 글

Python - 실습 - 게시판 만들기 (함수)  (0) 2019.01.31
Python - class  (0) 2019.01.31
Python - for  (0) 2019.01.31
Python - while  (0) 2019.01.31
Python - 제어하기 (if, elif, else)  (0) 2019.01.30
Comments