[Python] 파이썬 while True 쉽게 이해하기

2023. 11. 1. 08:33·Python

while True(무한 반복문)란?

while True 루프는 Python에서 매우 강력한 프로그래밍 도구입니다. 이 루프는 조건이 항상 참(True)이므로, 내부에 있는 코드는 무한히 반복됩니다. 이러한 루프는 조건부 루프(conditional loop)의 한 예로, 루프를 중단하는 명시적인 조건이나 break가 없으면 영원히 계속됩니다.

언제 사용하는가? while True 루프는 주로 다음과 같은 상황에서 사용됩니다:

  • 사용자 입력을 받고, 유효하지 않은 입력에 대해서는 무한 반복하면서 계속 입력을 요청할 때
  • 특정 조건이 충족될 때까지 계속 작업을 수행해야 할 때. 예를 들어, 네트워크 연결이 성공할 때까지 시도하는 경우
  • 서버와 같이 계속해서 서비스를 제공해야 하는 프로그램에서, 중단 명령을 받을 때까지 무한히 동작해야 할 때

이러한 루프의 중요한 점은 어떻게 안전하게 빠져나오는가입니다. 무한 루프가 특정 조건에서 중단될 수 있도록, break 문을 적절하게 사용하는 것이 필수적입니다.

다음은 예시를 통해 while True에 대한 기본적인 사용방법을 보여드리겠습니다 :)

While Ture 사용 예시

예시 1: 기본적인 무한 루프

while True:
    print("Hello, world!")

출력 결과

Hello, world!
Hello, world!
Hello, world!
...(무한 반복)

예시 2: 사용자 입력을 받는 루프

while True:
    user_input = input("종료하려면 'exit'를 입력하세요: ")
    if user_input == "exit":
        break
    print("입력한 내용:", user_input)

출력 결과

종료하려면 'exit'를 입력하세요: 안녕하세요
입력한 내용: 안녕하세요
종료하려면 'exit'를 입력하세요: exit

예시 3: 특정 조건에서 루프 중단

i = 0
while True:
    print(i)
    i += 1
    if i > 5:
        break

출력 결과

0
1
2
3
4
5

예시 4: 무한 루프 내에서 예외 처리

while True:
    try:
        number = int(input("숫자를 입력하세요: "))
    except ValueError:
        print("숫자가 아닙니다. 다시 시도해주세요.")
        continue
    print("입력한 숫자:", number)
    break

출력 결과

숫자를 입력하세요: 문자열
숫자가 아닙니다. 다시 시도해주세요.
숫자를 입력하세요: 10
입력한 숫자: 10

예시 5: 카운트 다운

count = 10
while True:
    print(count)
    count -= 1
    if count < 0:
        print("여의도 불꽃 축제를 시작하겠습니다!")
        break

출력 결과

10
9
8
7
6
5
4
3
2
1
0
여의도 불꽃 축제를 시작하겠습니다!

예시 6: 무한 반복 메뉴 선택

while True:
    choice = input("1: 시작, 2: 설정, 3: 종료 > ")
    if choice == "1":
        print("게임을 시작합니다.")
    elif choice == "2":
        print("설정 메뉴를 엽니다.")
    elif choice == "3":
        print("게임을 종료합니다.")
        break
    else:
        print("잘못된 입력입니다.")

출력 결과

1: 시작, 2: 설정, 3: 종료 > 4
잘못된 입력입니다.
1: 시작, 2: 설정, 3: 종료 > 1
게임을 시작합니다.
1: 시작, 2: 설정, 3: 종료 > 3
게임을 종료합니다.

예시 7: 무한 루프와 break의 결합

i = 0
while True:
    if i % 5 == 0 and i != 0:
        print("5의 배수: ", i)
        break
    i += 1

출력 결과

5의 배수: 5

예시 8: 사용자로부터 유효한 입력 받기

while True:
    input_data = input("숫자를 입력하세요 (종료하려면 'q' 입력): ")
    if input_data == 'q':
        break
    if input_data.isdigit():
        print(f"입력된 숫자: {input_data}")
    else:
        print("유효하지 않은 입력입니다.")

출력 결과

숫자를 입력하세요 (종료하려면 'q' 입력): hello
유효하지 않은 입력입니다.
숫자를 입력하세요 (종료하려면 'q' 입력): 123
입력된 숫자: 123

예시 9: 특정 조건이 충족될 때까지 반복하기

counter = 0
while True:
    counter += 1
    print(f"카운터: {counter}")
    if counter == 5:
        break

출력 결과

카운터: 1
카운터: 2
카운터: 3
카운터: 4
카운터: 5

위의 예시들은 while True 루프를 효과적으로 사용하는 방법을 보여줍니다. break 문을 활용하면 특정 조건에서 무한 루프를 적절히 종료할 수 있습니다~!

다양한 시나리오에서 while True를 사용하면 유연하고 효과적인 코드를 작성해 보세요 :)

더 자세한 정보는 Python의 공식 문서에서 확인하실 수 있습니다.
링크 Python 공식 문서 - while true

저작자표시 비영리 변경금지 (새창열림)
'Python' 카테고리의 다른 글
  • [파이썬] for문 이점 및 사용방법 (예시)
  • [Python] 파이썬 Collections 모듈을 활용한 데이터 관리 효율화
  • [Python] 파이썬 loc와 iloc의 차이점 비교
  • [Python] 파이썬 for문과 한 줄for문 (List Comprehension) 차이
hyunicecream
hyunicecream
안녕하세요. 여러가지 정보를 통해 조금이나마 도움이 되고자 시작하게 되었습니다.
  • hyunicecream
    Café
    hyunicecream
  • 홈
  • 포스팅 카테고리

    • 분류 전체보기
      • 생성형 AI
        • ChatGPT
        • Claude AI
        • MS Copilot
        • Perplexity
        • 생성형 AI 정보
        • 프롬프트 작성 가이드
        • AI 활용기
      • Notion
      • 업무 생산성
      • Python
        • pandas
      • 머신러닝
      • 딥러닝
      • Terminal
      • SQL
        • Postgre SQL
      • 여행정보
        • 국내여행
  • 최근 글

  • hELLO· Designed By정상우.v4.10.3
hyunicecream
[Python] 파이썬 while True 쉽게 이해하기
상단으로

티스토리툴바