mylist = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]반복문
- 1회 이상 반복해서 수행하는 일을 반복문으로 통해 쉽게 해결할 수 있습니다.
- 반드시 list, tuple, dict, set 등 집합에 대한 순회를 돌며 일을 처리할 때 많이 쓰입니다.
- list, tuple, dict, set, 문자열까지 모두 순회가능한(iterable) 객체 입니다.
- 순회가능한(iterable) 객체는 반복문을 통해 순회할 수 있습니다.
mylist에 들어 있는 모든 값들을 출력하려고 한다면?
print(mylist[0])
print(mylist[1])
print(mylist[2])
print('...')
print(mylist[8])
print(mylist[9])1
2
3
...
9
10
노가다를 획기적으로 줄여주는 방법!!!
for 와 in 구문 (반복문)
[기본 문법]
for 하나씩 꺼내올 때 변수 in [꺼내올 집합]:
(indent) * list, tuple, set, dictionary, 문자열 형태 모두 가능 * range와 결합하여 사용 가능
리스트(list)
mylist = [1, 2, 3, 4, 5]for i in mylist:
print(i)1
2
3
4
5
튜플(tuple)
for i in (1, 2, 3, 4, 5):
print(i)1
2
3
4
5
tuple + list
tuple을 전체로 받아주는 경우
person = ('제이콥스', 10)
print(person)
print(person[0])
print(person[1])('제이콥스', 10)
제이콥스
10
tuple의 요소를 개별로 받아주는 경우
name, age = ('제이콥스', 10)
print(name)
print(age)제이콥스
10
반복문에서의 응용
mytuplelist = [('제이콥스', 10), ('피터', 20), ('타이거', 30)]
for mytuple in mytuplelist:
print(mytuple[0], mytuple[1])제이콥스 10
피터 20
타이거 30
mytuplelist = [('제이콥스', 10), ('피터', 20), ('타이거', 30)]
for name, age in mytuplelist:
print(name, age)제이콥스 10
피터 20
타이거 30
딕셔너리(dictionary)
mydict = {'헐크': 50, '아이언맨': 60, '펭수': 70}for key in mydict.keys():
print(key)헐크
아이언맨
펭수
for value in mydict.values():
print(value)50
60
70
for name, age in mydict.items():
print(name, age)헐크 50
아이언맨 60
펭수 70
문자열(str)
for c in "Hello":
print(c)H
e
l
l
o
range()
range()함수는 별도의 list, tuple 생성 없이 range() 에서 정의한 범위를 반복는데 활용할 수 있습니다.range(start, stop, step)형식을 사용합니다.
stop: 단일 값을 지정하는 경우
for i in range(10):
print(i)0
1
2
3
4
5
6
7
8
9
start, stop: 두 개의 값을 지정한 경우
for i in range(2, 9):
print(i)2
3
4
5
6
7
8
start, stop, step: 세 개의 값을 지정한 경우
for i in range(1, 10, 2):
print(i)1
3
5
7
9
반복문의 중첩
for i in range(1, 4):
for j in range(1, 4):
print(f'(i={i}) + (j={j}) = {i * j}')
print('===')(i=1) + (j=1) = 1
(i=1) + (j=2) = 2
(i=1) + (j=3) = 3
===
(i=2) + (j=1) = 2
(i=2) + (j=2) = 4
(i=2) + (j=3) = 6
===
(i=3) + (j=1) = 3
(i=3) + (j=2) = 6
(i=3) + (j=3) = 9
===
제어문
continue
- 반복문 내부에서
continue구문은 해당 루프(loop)를 건너뛰게 합니다. continue라는 구문을 만나면, 반복문에서continue아래 작성된 코드는 실행되지 않고 건너뜁니다.
mylist = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]반복문과 조건문 그리고 continue를 활용하여 짝수만 출력해 주세요
for i in mylist:
if i % 2 == 1:
continue
print(i)2
4
6
8
10
break
- break 구문을 만나면, 반복 루프(loop)는 즉시 종료됩니다.
mylist = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]break를 사용하여 i가 6 이상이면 STOP
for i in mylist:
if i >= 6:
break
print(i)1
2
3
4
5
break, continue 차이
for i in range(10):
if i == 5:
break
print(i)0
1
2
3
4
for i in range(10):
if i == 5:
continue
print(i)0
1
2
3
4
6
7
8
9
While
- while 문은 while문과 함께 정의한 조건이 참이 동안 반복 루프를 수행합니다.
count = 5
while count > 0:
print(count)
count -= 15
4
3
2
1
많은 사용하는 방법 중 하나는 while True로 지정하여 무한 루프를 생성 후, 탈출 구문 루프 내에서 설정하는 것입니다.
count = 1
while True:
print(count)
count += 1
# 탈출 구문(break)
if count > 5:
break1
2
3
4
5