Menu
CoddyTech

while 반복문

Coddy Python 여정의 기초 섹션에 포함된 레슨. 77개 중 36번째.

while 루프는 for 루프와 다릅니다. for 루프를 사용하면 특정 range를 순회할 수 있는 반면, while 루프를 사용하면 특정 조건이 충족되는 동안 계속 순회할 수 있습니다.

while 루프를 사용하려면 다음과 같이 작성하세요:

while condition:
	code

조건이 True인 경우에만 코드가 실행됩니다.

조건은 일반적으로 <=(작거나 같음), >=(크거나 같음), <(작음), >(큼) 또는 ==(같음)과 같은 비교 연산자를 사용하여 구성됩니다. 해당 비교 결과가 True인 동안 루프는 계속 실행되며, False가 되는 즉시 중지됩니다.

반복문의 본문 안에서는 일반적으로 검사 대상인 변수를 업데이트해야 합니다. 이는 +=(더하고 할당), -=(빼고 할당), *=(곱하고 할당), /=(나누고 할당)와 같은 복합 할당 연산자를 사용하여 수행합니다. 예를 들어, x *= 2는 x = x * 2의 축약형입니다. 변수를 업데이트하지 않으면 조건이 절대 바뀌지 않으며 반복문은 영원히 실행됩니다.

while로 문제를 해결할 수 있지만 for 루프로는 해결할 수 없는 경우가 많습니다.

예를 들어 다음 문제를 생각해 보세요.

주어진 수보다 큰 가장 작은 2의 거듭제곱을 찾으세요.

이 문제를 해결하기 위해 현재 2의 거듭제곱에 2를 반복해서 곱하여 주어진 수보다 커질 때까지 수행하는 while 루프를 사용합니다:

number = 27
power_of_two = 1
while power_of_two <= number:
    power_of_two *= 2
print(power_of_two)

여기서 power_of_two <= number는 비교 연산자를 사용하는 조건이고, power_of_two *= 2는 복합 할당 연산자를 사용하여 각 반복마다 변수를 업데이트합니다. power_of_two가 number를 초과하면 조건은 False가 되고 반복문이 중지됩니다.

challenge icon

챌린지

초급

하나의 입력값인 float 숫자를 받는 프로그램을 작성하세요.

숫자가 크거나 같은 동안 while 루프를 사용하여 입력값을 2로 나누세요. 3.5

3.5보다 작은 첫 번째 숫자를 출력하세요.

직접 해보기

quiz icon실력 점검

이 레슨에는 짧은 퀴즈가 포함되어 있습니다. 레슨을 시작해 문제를 풀고 진행 상황을 기록하세요.

기초의 모든 레슨

직접 연습해 보세요: 온라인 Python 컴파일러