[Python] 반복문 - while 문, for문, break, continue

Programming/PYTHON

[Python] 반복문 - while 문, for문, break, continue

tnddj1219 2022. 2. 4. 12:08
728x90

반복문
컴퓨터에게 반복적인 작업을 지시하기 위해 사용하는 방법이다.
while 문 / for문 이 있다.

For문 기본구조

For문 기본구조는 위와 같이 구성되어 있다.
For 반복문은 in 뒤에 존재하는 문자열, 리스트, 튜플 또는 range(시작 숫자, 끝 숫자)를 순회하면서 하나씩 변수에 값을 넣어준다.
* range(숫자1,숫자2)-> 시작 숫자부터 끝숫자까지의 숫자 (이때 끝 숫자는 포함되지 않는다)

For문 예시

### 예시1 구구단-2단 
N=2 
for i in range(1,10): 
   print('{0} x {1} = {2}'.format(N,i,N*i)) 

### 예시1-1 구구단-2단~9단 
for N in range(2,10): 
   print("===={0}단====".format(N)) 
   for i in range(1,10): 
      print('{0} x {1} = {2}'.format(N,i,N*i)) 

### 예시2 이름 출력하기 
for name in ['철수','영희','승희','윤정']: 
   print('내 이름은 {0} 입니다.'.format(name))


while 문 기본구조

while문의 기본구조는 위와 같이 구성되어 있다.
while문은 조건이 참(True)인 동안에 문장이 반복되서 수행된다.
조건문에 값 대신 True가 들어갈 경우, 무한루프를 돌게 된다.

while 문 예시

## 예시1 - a값 출력하기
a=1
while a<=5:
  print("a 값은 {0}입니다.".format(a))
  a=a+1
  
## 예시2 - 무한루프
while True:
  print("hello world")

예시1은 아래와 같이 반복문이 실행되다가 종료한다.

a값 조건문(조건판단) print 값 while 문
1 1<=5(True) a 값은 1입니다. 반복
2 2<=5(True) a 값은 2입니다. 반복
3 3<=5(True) a 값은 3입니다. 반복
4 4<=5(True) a 값은 4입니다. 반복
5 5<=5(True) a 값은 5입니다. 반복
6 6<=5(False)   종료

예시2는 조건문이 무조건 참(True)이기때문에 무한루프를 돌게 된다. =>"hello world" 계속 출력함

break / continue 문
break: 반복문 실행 도중 중간에 종료시킬 때(반복문을 빠져나감) 사용한다.
continue: 반복문을 중간에 맨 처음 반복문으로 다시 돌아갈 때 사용한다.

## 예시1 - break문 
a=1 
while a<=5: 
   if a==4: break 
   print("a 값은 {0}입니다.".format(a)) 
   a=a+1 

## 예시2 - continue 문 
a=1 
while a<=5: 
   if a%2==0: 
      print("a 값은 {0}입니다.".format(a)) 
   a=a+1

예시1번 같은 경우에는 a=4가 되었을 때 if 문 안의 break문을 만나게 된다. 따라서 while 문이 그대로 종료하게 된다.

a값 조건문(조건판단) if 문(조건판단) print 값 while 문
1 1<=5(True) 1==4(False) a 값은 1입니다. 반복
2 2<=5(True) 2==4(False) a 값은 2입니다. 반복
3 3<=5(True) 3==4(False) a 값은 3입니다. 반복
4 4<=5(True) 4==4(True) -> break 문 실행   종료

예시2번 같은 경우에는 a%2==일때 if 문 안의 continue문을 만나게 된다. 따라서 print를 하지 못하고, 맨 처음의 반복문으로 가게 된다.

a값 조건문(조건판단) if 문(조건판단) print 값 while 문
1 1<=5(True) 1%2==0(False) a 값은 1입니다. 반복
2 2<=5(True) 2%2==0(True) -> continue문 실행   반복
3 3<=5(True) 3%2==0(False) a 값은 3입니다. 반복
4 4<=5(True) 4%2==0(True) -> continue문 실행   반복
5 5<=5(True) 5%2==0 a 값은 5입니다. 반복
6 6<=5(False)     종료



[출처] 점프 투 파이썬

728x90