TIL

TIL.43 반복문 (for, while)

codermun 2020. 11. 21. 12:38
728x90
반응형

Break

반복문 실행 도중 반복문 구문을 빠져나오고 싶을때 사용한다.

아래 예를 보면

3을 찾던 말던 print("3 못찾음 계속 돌려") 는 계속 실행되는 것을 알 수 있다.

5번만 실행되는데 출력은 6개가 나온다 , 이유는 3을 찾아도 아래 print 문을 실행하기 때문이다.

list = [1, 2, 3, 4, 5]

for i in list:
    if i == 3 :
        print("3찾음")
    print("3 못찾음 계속 돌려")

# 3 못찾음 계속 돌려
# 3 못찾음 계속 돌려
# 3찾음
# 3 못찾음 계속 돌려
# 3 못찾음 계속 돌려
# 3 못찾음 계속 돌려

 

이처럼 내가 원하는 바를 찾은 후 계속해서 반복문을 돌릴 필요가 없기에 break를 이용하면 아래와 같다

i 가 3일때 break 명령어를 만나 for 반복문 중단하고 for 구문을 빠져나오게 된다.

따라서 break 아래 print 구문은 더이상 실행되지 않는다.

list = [1, 2, 3, 4, 5]

for i in list:
    if i == 3 :
        print("3찾음")
        break
    print("3 못찾음 계속 돌려")

# 3 못찾음 계속 돌려
# 3 못찾음 계속 돌려
# 3찾음

 

Continue

break와는 달리 continue 명령어는 for 구문을 빠져나오지는 않지만, 다음 하위 코드로 넘어가고 싶을때 사용한다.

먼저 continue 를 사용하지 않으면 "모모" 일때만 if문 안쪽의 print가 실행되지 않으며

나머지 경우엔 print 문 2개가 모두 출려된다.

twice =["나연", "사나", "정연", "모모", "미나", "채영", "다현", "쯔위", "지효"]

for member in twice:
    if member != "모모":
        print("모모가 아니면 시러요")
    print("선물을 보내겠스비다.")

# 모모가 아니면 시러요 1
# 선물을 보내겠스비다. 2
# 모모가 아니면 시러요 3
# 선물을 보내겠스비다. 4
# 모모가 아니면 시러요 5 
# 선물을 보내겠스비다. 6
# 선물을 보내겠스비다. 7
# 모모가 아니면 시러요 8
# 선물을 보내겠스비다. 9
# 모모가 아니면 시러요 10
# 선물을 보내겠스비다. 11
# 모모가 아니면 시러요 12
# 선물을 보내겠스비다. 13
# 모모가 아니면 시러요 14
# 선물을 보내겠스비다. 15
# 모모가 아니면 시러요 16
# 선물을 보내겠스비다. 17

 

여기서 continue를 적용하면 모모가 아닐때는 맨 아래 print 문을 실행하지 않고 다시 반복문으로 올라가는것을 볼 수 있다.

twice =["나연", "사나", "정연", "모모", "미나", "채영", "다현", "쯔위", "지효"]

for member in twice:
    if member != "모모":
        print("모모가 아니면 시러요")
        continue
    print("선물을 보내겠스비다.")

# 모모가 아니면 시러요 1 
# 모모가 아니면 시러요 2
# 모모가 아니면 시러요 3
# 선물을 보내겠스비다. 4
# 모모가 아니면 시러요 5 
# 모모가 아니면 시러요 6 
# 모모가 아니면 시러요 7
# 모모가 아니면 시러요 8
# 모모가 아니면 시러요 9

 

 

 

728x90
반응형