[학습일기 #10] 업무 효율 높이기: 반복문의 등장

Ariel_Jeong·2025년 12월 15일

[학습 일기 시리즈]

목록 보기
10/44
post-thumbnail

조건문을 배우면서, 우리는 코드가 상황에 따라 다른 판단을 내릴 수 있게 만들었다.
하지만 한 가지 문제가 남아 있었다.

"같은 작업을 여러 번 해야 할 때는 어떻게 해야 할까?"

예를 들어,

  • “안녕하세요”를 10번 출력하고 싶을 때
  • 1부터 100까지의 숫자를 모두 출력하고 싶을 때
  • 리스트에 담긴 여러 데이터를 하나씩 처리하고 싶을 때

매번 같은 코드를 복사해서 붙여 넣는 방식은 비효율적일 뿐 아니라, 실수도 쉽게 발생한다.

이 문제를 해결해주는 도구가 바로 반복문이다.
오늘은 반복문이 무엇인지, 왜 필요한지, 그리고 파이썬에서 어떻게 사용하는지 차근차근 정리해보자.



1. 반복문이란? ⚙️

반복문(loop)같은 코드조건에 따라 여러 번 실행하도록 만드는 문법이다.

예를 들어,

print("안녕하세요")
print("안녕하세요")
print("안녕하세요")

위 코드는 문제없이 동작하지만,
반복해야 할 횟수가 늘어날수록 관리가 어려워진다.

반복문을 사용하면 이렇게 바꿀 수 있다.

for i in range(3):
    print("안녕하세요")

같은 결과지만, 코드의 의도와 구조가 훨씬 명확해진다.



cf) 왜 반복문이 필요할까? 🧐

반복문이 필요한 이유를 한 문장으로 정리하면 다음과 같다.

“같은 작업을 여러 번 해야 할 때, 효율을 높이기 위해서율을 높이기 위해서”

앞서 구구단을 출력하는 예제를 떠올려보면 이 이유가 더 분명해진다.

만약 반복문을 사용하지 않는다면,
구구단을 출력하기 위해 아래와 같이 같은 함수를 계속 작성해야 한다.

print(2 * 1)
print(2 * 2)
print(2 * 3)
print(2 * 4)
print(2 * 5)
print(2 * 6)
print(2 * 7)
print(2 * 8)
print(2 * 9)

이 방식은 코드가 길어지고, 수정할 부분이 많아지며
숫자를 하나라도 잘못 입력하면 오류가 생기기 쉽다.

하지만 아래와 같이 반복문사용하면, 같은 동작을 “한 번만” 정의하고 반복을 컴퓨터에게 맡김으로써
불필요한 동작으로 인해 소모되는 시간을 줄이고, 오타로 인해 생길 수 있는 오류를 줄일 수 있다.

for n in range(1, 10):
    print(2 * n)




2. 반복문의 종류 🐍🔁

파이썬에서 가장 많이 사용하는 반복문은 2가지다.


2.1. for 반복문

정해진 횟수만큼 반복할 때 사용

✔️ 형태

for 변수 in 범위:
    (수행할 명령)
    
# range를 이용한 반복문
for i in range(1, 11): # range를 활용해 범위 지정
    print(i)

# 리스트를 이용한 반복문
fruits = ["사과", "바나나", "포도"] # 리스트 정의

for fruit in fruits: # 리스트를 활용해 범위 지정
    print(fruit)
    
# 함수를 이용한 반복문
fruits = ["사과", "바나나", "포도"] # 리스트 정의

for idx, fruit in enumerate(fruits): # 함수를 활용해 범위 지정
    print(idx, fruit)
# 결과: 0 사과
       1 바나나
       2 포도
    
# 문자열을 이용한 반복문
text = "파이썬" # 문자열 정의

for character in text: # 문자열을 활용해 범위 지정
    print(character)
# 결과: 파
       이
       썬

✔️ 특징

  • 반복 횟수가 명확할 때 사용
  • 리스트, 문자열, 숫자 범위와 궁합이 좋음

2.2. while 반복문

조건식이 참인 동안 특정 코드 블록을 반복

✔️ 형태

while 조건식:
    코드 블록
    
# 예시: 1~10 제곱 출력
number = 1

while number <= 10:
    print(f"{number**2}")
    number += 1

✔️ 특징

  • 반복 횟수가 명확하지 않을 때 사용
  • 조건 관리가 중요 (조건이 명확하지 않으면 무한 루프에 빠질 수 있다.)



cf) 추가로 알아두면 좋은 핵심 개념 🎯

✔️ 반복 변수

i = 1
while i < 10:
    print(i)
    i += 1

여기서 i는 반복될 때마다 값이 바뀌는 변수이다


✔️ 제어문

  • break : 반복문 즉시 종료
n = 1

while True:
    if n > 10:
        break
    print(n)
    n += 1
# 결과: 1
       2
       3
       4
       5
       6
       7
       8
       9
       10

  • continue : 이번 반복만 건너뛰고 다음 반복으로 이동
for i in range(1, 11):
    if i % 2 == 0:
        continue
    print(i)
# 결과: 1
       3
       5
       7
       9

  • pass: 코드가 실행되긴 하나, 특별한 작업을 하지 않고 그냥 지나감
for i in range(1, 11):
    if i % 2 == 0:
        pass
    else:
        print(i)
# 결과: 1
       3
       5
       7
       9

✔️ 중첩 반복문

  • for문 중첩
for (변수1) in (반복 가능한 객체1):
    for (변수2) in (반복 가능한 객체2):
        실행할 코드 블록
        
# 예시:
for i in range(2, 10):
    for j in range(1, 10):
        print(f"{i} * {j} = {i*j}")

  • while문 중첩
(변수1 지정)
while (조건1):
    (변수2 지정)
    while (조건2):
       (실행할 코드 블록)
       (조건2에 관련된 변수 변경)
    (조건1에 관련된 변수 변경)
    
# 예시:
i = 2

while i < 10:
    j = 1
    while j < 10:
        print(f"{i} * {j} = {i*j}")
        j += 1
    i += 1

  • for + while 중첩
for (변수1) in (범위 지정):
    (변수 2 지정)
    while (조건):
        (실행할 코드 블록)
        (조건에 관한 변수 변경)

# 예시:
for i in range(2, 10):
    j = 1
    while j < 10:
        print(f"{i} * {j} = {i*j}")
        j += 1




3. 실습 결과 👩🏻‍💻

3.1. 실습 1_for문으로 1~10 출력하기

[캡쳐 1-1. for문으로 1부터 10까지 출력된 결과]



3.2. 실습 2_for문으로 이름 리스트 출력하기

[캡쳐 1-2. 리스트에 있는 이름들이 "안녕하세요, 00님"으로 출력된 결과]



3.3. 실습 3_while문으로 "파이썬 재미있어요"를 3번 출력하기

[캡쳐 1-3. 문장 3반복 출력된 결과]



3.4. 실습 4_while문으로 10부터 1까지 거꾸로 출력하기

[캡쳐 1-4. while문으로 10부터 1까지 거꾸로 출력된 결과]




[참고한 사이트 목록]

profile
R&D 분야의 경험을 토대로 커리어 확장에 도전중인 개발꿈나무입니다.

0개의 댓글