17.5 반복횟수가 정해지지 않은 경우

지금까지 조건식에서 반복 횟수를 정한 뒤 변수 i를 증가시키거나 감소시켜서 while 반복문을 사용했습니다. 하지만 while 반복문은 반복 횟수가 정해지지 않았을 때 주로 사용합니다.

다음은 while 반복문 안에서 무작위로 정수를 생성한 뒤 3이 나오면 반복을 끝냅니다. 예를 들어 게임에서 카드를 무작위로 뽑다가 3이 나오면 던지는 식이 되겠죠?

while_random.py

import random    # random 모듈을 가져옴
 
i = 0
while i != 3:    # 3이 아닐 때 계속 반복
    i = random.randint(0, 9)    # randint를 사용하여 0부터 9까지 무작위로 정수를 생성
    print(i)

실행 결과

7
1
5
5
6
3 
↑ 무작위 생성이므로 실행할 때마다 달라짐

무작위로 정수를 생성하려면 먼저 importrandom 모듈을 가져옵니다. 이제 while 반복문에서 i != 3과 같이 조건식을 지정하여 3이 아닐 때 계속 반복하도록 만듭니다. 그리고 반복할 코드에서 i = random.randint(0, 9)와 같이 0부터 9까지 무작위로 정수를 생성하여 변수 i에 저장합니다

정수가 무작위로 생성되므로 실행할 때마다 반복 횟수가 달라지는 것을 볼 수 있습니다. 이처럼 while 반복문은 반복 횟수가 정해져 있지 않을 때 유용합니다.