SW/Python

Python : while Loop : 사용 방법, 예제, 개념

얇은생각 2022. 7. 10. 07:30
반응형

루프는 프로그래밍 언어의 기본 개념 중 하나입니다. 루프는 특정 코드 블록을 지정된 조건이 충족될 때까지 여러 번 반복하려는 경우에 유용합니다.

파이썬에는 for 루프와 while 루프라는 두 가지 기본 루프 구조가 있습니다.

이 튜토리얼에서는 Python의 while 루프에 대한 기본 사항을 다룹니다. 또한 else 절과 break and continue 문장의 사용법도 알려드리겠습니다.

 

 

Python : while Loop : 사용 방법, 예제, 개념

 

 

Python while Loop

while 루프는 주어진 조건이 true로 평가되는 한 알 수 없는 횟수만큼 해당 문을 실행합니다.

Python while loop는 다음과 같은 형태를 취합니다.

while EXPRESSION:
    STATEMENT(S)

 

 

while 문은 while 키워드로 시작하고 조건식으로 시작합니다.

EXPRESSION은 문을 실행하기 전에 평가됩니다. 조건이 true로 평가되면 STAUTEN(S)이 실행됩니다. 그렇지 않으면 조건이 false로 평가되면 루프가 종료되고 프로그램 제어가 다음 문으로 전달됩니다.

STAUT(S) 블록은 들여쓰기로 시작하여 들여쓰지 않은 첫 번째 줄로 끝납니다. 대부분의 사람들은 4공백 또는 2공백 들여쓰기를 선택합니다. Python Code 공식 스타일 가이드에서는 들여쓰기 수준당 4개의 공백을 사용하고 들여쓰기를 위한 탭과 공백을 혼용하지 않도록 권장합니다.

다음 예제 코드에서는 변수 i의 현재 값이 5보다 작으면 증가 및 인쇄합니다.

i=0
while i < 5:
    i += 1
    print('number:', i)
    
# number: 1
# number: 2
# number: 3
# number: 4
# number: 5

 

 

내가 5보다 작거나 같으면 반복해요. 그러면 다음과 같은 출력이 생성됩니다.

Python은 표준 비교 연산을 지원합니다.

 

a == b - a와 b가 같으면 참입니다.

a != b - a와 b가 같지 않으면 참입니다.

a > b - a가 b보다 크면 참입니다.

a >= b - a가 b보다 크거나 같으면 참입니다.

a < b - a가 b보다 작으면 참입니다.

a <= b - a가 b보다 작거나 같으면 참입니다.

 

조건식을 부정하려면 다음과 같이 논리 연산자를 사용합니다.

i=0
while not i >= 5:
    i += 1
    print('number:', i)

 

 

 

break, contiune 문

끊기 및 계속 문을 사용하여 반복 실행을 제어할 수 있습니다.

중단문은 현재 루프를 종료하고 종료된 루프 다음에 오는 문으로 프로그램 제어를 전달합니다. 가장 일반적인 상황은 특정 조건이 충족될 때 break를 사용하여 루프를 종료하는 것입니다.

다음 예에서는 현재 반복 항목이 2가 되면 루프 실행이 중단됩니다.

i=0
while i < 5:
    i += 1
    if i == 2:
        break
    print('number:', i)
    
# Number: 1

 

 

계속 문은 루프의 현재 반복을 종료하고 프로그램 제어를 루프의 다음 반복으로 전달합니다.

다음 예제에서 현재 반복 항목이 2인 경우 continue 문은 루프의 처음으로 돌아가 다음 반복을 계속하도록 합니다.

i=0
while i < 5:
    i += 1
    if i == 2:
        continue
    print('number:', i)

# number: 1
# number: 3
# number: 4
# number: 5

 

 

 

else 절

다른 언어와 달리 파이썬에서는 while 루프에 옵션인 다른 절이 있습니다.

expression이 false로 평가될 때만 else 절 내부의 문이 실행됩니다. 예외가 발생하거나 루프가 구분문으로 종료되면 실행되지 않습니다.

while EXPRESSION:
    STATEMENT(S)
else:
    STATEMENT(S)

 

 

 

다음은 예입니다.

i=0
while i < 5:
    i += 1
    print('number:', i)
else:
    print('Loop completed.')

# number: 1
# number: 2
# number: 3
# number: 4
# number: 5
# Loop completed.

 

 

이제 루프를 벗어날 때 어떤 일이 일어나는지 알아보겠습니다.

i=0
while i < 5:
    i += 1
    if i == 2:
        break
    print('number:', i)
else:
    print('Loop completed.')
    
# Number: 1

 

 

표현식이 false로 평가되지 않았으므로 other 절 내부의 문이 실행되지 않습니다.

일시 루프가 있는 다른 절은 자주 사용되지 않습니다. 한 가지 일반적인 상황은 루프에서 벗어날 것으로 예상되는 경우로, 조건이 false로 평가될 때까지 루프가 계속 실행되는 경우 일부 문이나 함수를 실행할 수 있습니다.

 

 

 

무한정 반복

무한 루프는 무한 반복되며 프로그램이 종료될 때까지 절대 종료되지 않는 루프입니다. 조건이 항상 true로 평가되면 무한 루프가 생깁니다.

무한 루프는 일반적으로 프로그램이 일부 외부 이벤트가 발생할 때까지 대기하도록 만드는 데 사용됩니다. 일반적으로 파이썬에서는 True를 사용하여 무한 루프를 만듭니다. True 대신 항상 True로 반환되는 다른 식을 사용할 수도 있습니다.

다음은 "예"를 입력하라는 메시지를 계속 표시하는 무한 반복의 예입니다.

while True:
    i = input('Please enter \'Yes\': ')
    if i.strip() == 'Yes':
        break

# Please enter 'Yes': 3
# Please enter 'Yes': l
# Please enter 'Yes': lin
# Please enter 'Yes': No
# Please enter 'Yes': Yes

 

 

위의 while 루프는 "Yes"를 입력할 때까지 실행됩니다.

무한 루프를 종료하는 또 다른 방법은 CTRL+C를 누르는 것입니다.

무한 루프를 작성할 때, 어느 시점에서 구분문을 사용하여 루프를 종료해야 합니다.

while loop는 주어진 조건이 true로 평가되는 동안 반복적으로 문을 실행합니다.

반응형