(Python) While()을 이용한 반복문

2022. 4. 26. 16:39·Python

이제 입출력과 변수 선언에 대해 충분히 알았으니 이것을 이용한 다양한 프로그램을 만드는데 같은 코드를 계속 써야하는 번거로움이 있다. 
 
예를들면 1부터 100까지 더하는 프로그램을 만들고싶은데 그걸 하나하나 다 치기엔 코드도 더러워질 뿐더러 내가 너무 힘들다. 
 
그럴땐 반복문을 이용하여 쓰는 것이 좋다. 쉽게 말하자면 게임 매크로 같은 것이다. 매크로를 사용하는 사람들은 자고있으면서 계속 같은 행동을 반복하며 사냥을 하고 쉽게 레벨을 올린다.
 
이것은 컴퓨터에게 '언제까지 이 코드를 몇 번 반복해' 라고 말하고 그 '언제'와 '몇 번'을 내가 지정하는 것이다.
 
while 문을 사용하는 방법은 다음과 같다.

while count < 100:			# count = 횟수
	print("배고파")			# 반복하고자 하는 코드
	count = count + 1		# 여기까지 왔다면 코드를 한번 실행했다는 뜻이므로 횟수에 +1

이 코드는 print("배고파") 이라는 문장을 100번 반복하는 코드이다. 그러면 결과는 배고파배고파배고파..... 이 될것이다.
 
먼저 첫번째 줄의 while count < 100은 count변수 안의 수가 100보다 작다면 아래 문장을 실행하라는 뜻이다. 
 
이제 3번째 문장인 count = conut + 1에 대해 생각해보자
 
앞서 말했듯 변수는 수를 담는 양동이지 정확한 수가 아니라고 했다. 따라서 변수안에 들어있는 수는 계속 변해도 상관 없다는 뜻이다. 
 
예를 들어 count가 1이라면 컴퓨터는 3번째 줄에서 count에 1을 더한다. 그 후에 다시 3번째 줄로 왔을 때엔 count가 2가 되었고 +1을 하며 점점 크기가 커진다.
 
그렇게 점점 커지다가 100이 되는 순간 while < 100이 아니므로 반복문을 빠져나온다.
 
이 코드에 있는 count라는 변수에 대해 이해했다면 input을 이용해 사용자가 직접 코드를 몇 번 반복할지도 정할 수 있다는걸 알 수 있다. 
 

무한 루프

 
우리가 공부를 하며 while 문을 잘못 쓰거나 어디선가 실수가 생겼을 때 결과창에 값이 매우 빠른 속도로 계속 나오는 것을 본 적이 있을 것이다. 
 
이를 '무한 루프'라고 한다. 무한 루프는 조건문이 항상 참이여서 문장이 while 문에서 빠져나오지 못하는 구조를 말한다. 

a = 0			# a를 0으로 생성
while True:		# 항상 while이 참 (무한루프)
	a +=1		# a가 1씩 증가
	print('a')	# a를 출력

 위 코드는 a가 0부터 1씩 무한히 증가하여 출력하는 코드이다. 이렇게 무한히 나오는 코드를 종료하기 위해선 2가지의 방법이 있다.
 
먼저 앞서 배웠듯 while의 조건을 걸어주는 것이다. a가 10 이상이라면 멈추는 조건을 만든다면 a는 0부터 10까지 출력되고 멈출 것이다.

break 

 
다음은 break이다.
 
break는 직역하면 멈춘다는 뜻을 가지고 있다. 위 코드를 통하여 while문을 이용해 무한루프를 돌리는 중에 a가 10 이상이면 멈추고 싶다면 break를 이용해 강제로 루프를 벗어나는 방법이 있다. 

a = 0			# 변수 a 에 0을 할당
while True:		# 무한루프
	a += 1		# a가 1씩 증가
    print(a)	# a를 출력
    if a >= 10:	# 만약 a가 10보다 크다면
    	break	# 멈춘다

위처럼 break에 조건을 걸어두어 조건문을 빠져나갈 수도 있다.

반응형
저작자표시 (새창열림)

'Python' 카테고리의 다른 글

(Python) 숫자 up & down 게임  (0) 2022.05.07
(Python) 숫자 야구 만들기  (0) 2022.05.06
(Python) if 를 이용한 조건문  (0) 2022.05.04
(Python) 리스트 할당  (0) 2022.04.19
(Python) 입출력과 변수  (0) 2022.04.17
'Python' 카테고리의 다른 글
  • (Python) 숫자 야구 만들기
  • (Python) if 를 이용한 조건문
  • (Python) 리스트 할당
  • (Python) 입출력과 변수
re-hwi
re-hwi
재휘의 개발일기
    반응형
  • re-hwi
    Dvelopment blog
    re-hwi
  • 전체
    오늘
    어제
    • 재휘의 개발일기 (168)
      • 개발 (1)
        • 소프트웨어 공학 (25)
      • Python (18)
        • numpy (8)
      • OS (23)
        • 쉽게 배우는 운영체제 (23)
      • Front end (1)
        • HTML (6)
        • CSS (9)
        • JavaScript (18)
        • React (2)
        • Vue.js (5)
        • TypeScript (5)
        • Sass (3)
      • Algorithm (1)
        • 파이썬 알고리즘 인터뷰 (2)
        • 자료구조와 함께 배우는 알고리즘 (20)
      • Android (2)
        • 안드로이드 앱 프로그래밍 with 코틀린 (2)
      • Project (15)
      • Network (0)
      • etc (12)
        • 이것저것 (10)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    pwa
    컴포넌트
    numpy
    HTML
    타입스크립트
    정보처리기사
    표
    개발
    vue
    typeScript
    js
    REACT
    CSS
    scss
    JavaScript
    티스토리챌린지
    프론트엔드
    FE
    파이썬
    자료흐름도
    플레이리스트
    sass
    리액트
    연결리스트
    알고리즘
    자료구조
    오블완
    TS
    정처기
    뷰
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.3
re-hwi
(Python) While()을 이용한 반복문
상단으로

티스토리툴바