🔥알림🔥
① 테디노트 유튜브 -
구경하러 가기!
② LangChain 한국어 튜토리얼
바로가기 👀
③ 랭체인 노트 무료 전자책(wikidocs)
바로가기 🙌
④ RAG 비법노트 LangChain 강의오픈
바로가기 🙌
⑤ 서울대 PyTorch 딥러닝 강의
바로가기 🙌
#07-파이썬(Python) 반복문
본 포스팅은 파이썬(Python) 코딩 입문자를 위한 튜토리얼 시리즈 연재 중 일부입니다.
이번 튜토리얼에서는 파이썬의 반복문을 다룹니다.
코드
반복문
- 1회 이상 반복해서 수행하는 일을 반복문으로 통해 쉽게 해결할 수 있습니다.
- 반드시 list, tuple, dict, set 등 집합에 대한 순회를 돌며 일을 처리할 때 많이 쓰입니다.
- list, tuple, dict, set, 문자열까지 모두 순회가능한(iterable) 객체 입니다.
- 순회가능한(iterable) 객체는 반복문을 통해 순회할 수 있습니다.
mylist = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
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)</br>
- 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 -= 1
5 4 3 2 1
많은 사용하는 방법 중 하나는 while True
로 지정하여 무한 루프를 생성 후, 탈출 구문 루프 내에서 설정하는 것입니다.
count = 1
while True:
print(count)
count += 1
# 탈출 구문(break)
if count > 5:
break
1 2 3 4 5
댓글남기기