python 개념정리

[파이썬] while문

dev_눕개 2021. 9. 1. 01:30

while 문

파이썬에서는 반복해서 문장이나 수식을 수행해야 할 경우 while문을 사용할 수 있다.

삼국지의 유비가 제갈량을 데려오기 위해 했던 ‘삼고초려’를 생각하며 while 문에 대해 알아보자.


meet=0
while meet<4:            # 유비가 제갈량을 방문횟수가 4보다 작을 동안 방문합니다.
    meet = meet+1        # 방문횟수 증가
    print("유비가 %d번 방문했습니다." % meet)
    if meet == 3:        # 세 번 만났기 때문에 방문을 종료함.
        print("제갈량이 유비 곁으로 갑니다.")
        break            # while 문을 빠져나온다.

실행 결과

유비가 1번 방문했습니다.
유비가 2번 방문했습니다.
유비가 3번 방문했습니다.
제갈량이 유비 곁으로 갑니다.

위의 예제 코드를 간단한 표로 만들어 보면 다음과 같다.
meet while 조건문 (판단) 수행 문장 while 문의 상태
0 0 < 4 (참) 유비가 1번 방문 했습니다 반복
1 1 < 4 (참) 유비가 2번 방문 했습니다 반복
2 2 < 4 (참) 유비가 3번 방문 했습니다 반복
3 3 < 4 (참) 제갈량이 유비 곁으로 갑니다. 반복
4 4 < 4 (거짓) 종료

위의 예제에서 사용된 break 키워드의 역할은 if 문이나 while 문, 뒤에서 살펴볼 for문 등의 조건문이나 반복문에서 가장 가까운 분기를 탈출시켜 준다.

다음 예제는 지정된 숫자가 입력되기 전까지는 계속해서 실행되는 while 문 예제이다.
예제

member = """
1.유비
2.관우
3.장비
4.제갈량
숫자를 입력하시오 : """

num = 0
while num != 4:
    print(member)
    num = int(input())
실행 결과

1.유비
2.관우
3.장비
4.제갈량
숫자를 입력하시오 :
1

1.유비
2.관우
3.장비
4.제갈량
숫자를 입력하시오 :
2

1.유비
2.관우
3.장비
4.제갈량
숫자를 입력하시오 :
3

1.유비
2.관우
3.장비
4.제갈량
숫자를 입력하시오 :
4

위의 예제에서 while 문은 숫자 4가 입력되기 전까지는 계속해서 실행된다.