Python(파이썬) 기본 - 07. while 반복문

아래 내용은 공부한 것을 정리하므로 틀린 내용이 포함되어 있을 수 있습니다.

1. While 문

  • 조건이 참인 동안 계속 반복합니다.
  • 조건을 조절하기 위해 조건문을 while 문 내부에서 핸들링해야합니다.
  • REPL을 실행해봅니다.
  • c-=1 구문은 c값을 -1 한 뒤 다시 할당합니다.
  • 여타 다른 언어에 있는 ++ 또는 -- 연산자는 Python에서는 없습니다.

      >>> c = 5
      >>> while c!=0:
      ...     print(c)
      ...     c-=1
      ... 
      5
      4
      3
      2
      1
    
  • 다른 표현 방법으로 위와 같은 while문을 작성해봅니다.
  • 위에 식은 명시적으로 0의 조건이 표현이 되어 있고, 아래의 식은 그렇지 않습니다.
  • 파아썬에서는 명시적인 코드를 권장합니다.(Explicit is better than implicit.)
      >>> c = 5
      >>> while c:
      ...     print(c)
      ...     c-=1
      ... 
      5
      4
      3
      2
      1
    
  • while문에서는 무한 loop를 조심해야합니다.
  • REPL에서 무한 loop 발생 시 CTRL + C 로 빠져나올 수 있습니다.
      >>> while True:
      ...     print("무한루프!CTRL+C로빠져나오세요")    
    

2. break문

  • break문은 while문,for문과 같은 반복문안에서 특정 조건에서 반복문을 중단 시키고 빠져나올때 사용합니다.
  • 아래 구문 중 input은 콘솔창에서 메세지를 보여주고 사용자 입력을 받습니다.
  • % 숫자를 나누고 나머지를 반환하는 연산자입니다.
  • 무한 루프 속에서 10으로 나누었을때 나머지가 0인 경우 break문으로 반복문을 중단하고 빠져나오는 예제입니다.

      >>> while True:
      ...     response = input('숫자를입력하세요:')
      ...     if int(response) % 10 == 0 :
      ...             print('10으로 나누었을때 나머지가 0입니다.')
      ...             break
      ... 
      숫자를입력하세요:2
      숫자를입력하세요:5
      숫자를입력하세요:7
      숫자를입력하세요:9
      숫자를입력하세요:10
      10으로 나누었을때 나머지가 0입니다.
      >>> 
    

3. continue문

  • continue문은 break문과 비슷하게 for와 while 반복문을 빠져나오지만 반복문을 중단시키지 않고 다음 반복으로 넘어갑니다.
  • 10을 입력하면 print("10으로 나눈 나머지는 {}입니다.".format(result)) 구문이 실행되지 않고 다음 반복이 됩니다.
  • 아래의 예제는 무한 loop이기 때문에 CTRL + C로 중단하셔야 합니다.
      >>> while True:
      ...     response = input('숫자를 입력하세요:')
      ...     result = int(response) % 10
      ...     if result == 0 :
      ...             continue
      ...     print("10으로 나눈 나머지는 {}입니다.".format(result))
      ... 
      숫자를 입력하세요:5
      10으로 나눈 나머지는 5입니다.
      숫자를 입력하세요:3
      10으로 나눈 나머지는 3입니다.
      숫자를 입력하세요:10
      숫자를 입력하세요:
    

❈ for 문은 차후에 다루겠습니다.