728x90
3-3. for 반복문과 range()
앞서 배운 while 문은 조건이 참인 동안 반복하는 구조였다면, 이번에 다룰 for 문은 반복할 횟수나 대상이 정해져 있을 때 사용하면 좋습니다.
파이썬의 for 문은 리스트, 문자열, range 객체 등 반복 가능한(iterable) 데이터를 하나씩 꺼내면서 반복 작업을 수행합니다.
기본 구조
for 변수 in 반복가능한_객체:
실행할 코드
예제: 1부터 5까지 출력
for i in range(1, 6):
print(i)
출력:
1
2
3
4
5
range(1, 6)은 1부터 5까지 숫자를 생성하는 함수입니다. 끝 값은 포함되지 않는 것에 주의하세요!
range() 함수 설명
range()는 숫자의 시퀀스를 만들어주는 내장 함수입니다.
range(시작값, 끝값, 증가값)
- range(5) → 0부터 4까지
- range(2, 6) → 2, 3, 4, 5
- range(1, 10, 2) → 1, 3, 5, 7, 9 (2씩 증가)
for i in range(1, 10, 2):
print(i)
출력:
1
3
5
7
9
문자열 반복
for char in "Python":
print(char)
출력:
P
y
t
h
o
n
리스트 반복
fruits = ["사과", "바나나", "포도"]
for fruit in fruits:
print(fruit)
출력:
사과
바나나
포도
enumerate(): 인덱스와 값 동시에 사용
fruits = ["사과", "바나나", "포도"]
for i, fruit in enumerate(fruits):
print(i, fruit)
출력:
0 사과
1 바나나
2 포도
반복 제어: break와 continue
for i in range(5):
if i == 3:
break
print(i)
출력:
0
1
2
for i in range(5):
if i == 2:
continue
print(i)
출력:
0
1
3
4
실전 예제: 구구단 2단 출력
for i in range(1, 10):
print(f"2 x {i} = {2*i}")
출력:
2 x 1 = 2
2 x 2 = 4
...
2 x 9 = 18
중첩 for 문
for i in range(2, 10):
for j in range(1, 10):
print(f"{i} x {j} = {i*j}")
print()
이 코드를 실행하면 구구단 전체를 출력할 수 있습니다.
마무리
이번 강의에서는 for 반복문과 range() 함수에 대해 배웠습니다. for 문은 정해진 횟수만큼 반복하거나 리스트, 문자열 같은 시퀀스를 순회할 때 매우 유용합니다.
728x90