[Python] 반복문 while
22 Jan 2020
Reading time ~2 minutes
반복문 while
while 뒤의 조건이 True 일 경우, while 코드 블록을 계속 수행합니다. 조건이 False가 되면 while 구문 이후의 코드를 수행합니다.
# while을 이용한 리스트 개별 데이터 값 출력
a = [1, 10, 9, 24]
i = 0
while i < len(a):
print('value: ', a[i], 'index: ', 1)
i += 1
print('hahaha')
# 출력:
value: 1 , index: 0
value: 10 , index: 1
value: 9 , index: 2
value: 24 , index: 3
hahaha
a = [1, 10, 9, 24, 25, 26]
i = 0
while i < len(a):
# 홀수인 경우 값 출력, ==1은 생략가능(1자체를 True로 인식)
if a[i] % 2 :
print(a[i])
# 짝수인 경우 2를 나눈 값 출력
else :
print(a[i]/2)
i += 1
# 출력:
1
5
9
12
25
13
무한루프
while의 경우 종료가 되도록 코드를 작성하지 않으면 셀이 무한히 수행되니 주의해야 합니다.
# 무한루프가 되는 코드의 예시
# 아래 코드를 수행하면 무한히 1을 출력한다.
a = [1, 10, 9, 24]
i = 0
while i < len(a):
print(a[i])
break
반복문을 중단할 때 사용합니다. 보통 if 조건문 안에서 수행되며, 조건문을 만족하는 경우 while 이후의 코드를 수행합니다.
a = [1, 10, 9, 24, 25, 26]
i = 0
while i < len(a):
if a[i] > 20:
break
print(a[i])
i += 1
print('wow')
# 출력:
1
10
9
wow
continue
break처럼 반복문 자체를 빠져나오지 않고, while 구문의 시작점으로 돌아갑니다.
특정한 경우에 코드를 수행하지 않고 건너뛰기 위해 사용합니다.
a = 7
while a > 0:
a -= 1
# 4일 때는 출력하지 않고 건너뜀
if a == 4:
continue
print(a)
# 출력
6
5
3
2
1
0
(연습문제) 1부터 100까지 while 구문을 사용해서 더하기
num = 1
_sum = 0
while num <= 100:
_sum += num
num += 1
print(_sum)
# 출력:
5050
(연습문제) while 구문을 사용하여 구구단 출력하기
x = 2
while x <= 9:
y = 1
while y <= 9:
print(x,'x',y,'=',x * y)
y += 1
x += 1
print('\n')
# 출력:
2 x 1 = 2
2 x 2 = 4
2 x 3 = 6
2 x 4 = 8
2 x 5 = 10
2 x 6 = 12
2 x 7 = 14
2 x 8 = 16
2 x 9 = 18
3 x 1 = 3
3 x 2 = 6
3 x 3 = 9
3 x 4 = 12
3 x 5 = 15
3 x 6 = 18
3 x 7 = 21
3 x 8 = 24
3 x 9 = 27
(중략)
9 x 1 = 9
9 x 2 = 18
9 x 3 = 27
9 x 4 = 36
9 x 5 = 45
9 x 6 = 54
9 x 7 = 63
9 x 8 = 72
9 x 9 = 81
Reference
- 패스트캠퍼스 파이썬 강의