본문 바로가기
오픈소스를 위한 기초 상식

조건문과 반복문: 파이썬에서 논리와 흐름을 제어하는 힘

by 지나가는 프로도 2025. 1. 14.

프로그래밍은 논리적 판단과 반복적인 작업을 통해 문제를 해결하는 과정입니다. 이 과정에서 핵심적인 역할을 하는 것이 바로 조건문반복문입니다. 조건문은 프로그램이 특정 조건에 따라 다른 동작을 하도록 제어하며, 반복문은 동일한 작업을 여러 번 수행하게 만듭니다. 파이썬은 간결하고 가독성 높은 문법을 통해 이 두 개념을 효과적으로 구현할 수 있도록 지원합니다. 본 글에서는 파이썬 조건문과 반복문의 구조와 활용법을 단계적으로 설명합니다.

 

조건문과 반복문 기초 개념

 

1. 조건문: 논리적 판단의 시작

조건문은 특정 조건이 참(True)인지 거짓(False)인지에 따라 서로 다른 명령을 실행하게 합니다. 이를 통해 프로그램의 흐름을 제어할 수 있습니다.

if-elif-else 구조

파이썬의 조건문은 기본적으로 if, elif, else 키워드를 사용하여 구성됩니다. 아래 표는 조건문 사용법과 예시를 설명합니다.

조건문 구조예시 코드실행 결과

기본 if 조건문 x = 10
if x > 5:
print("x는 5보다 크다")
x는 5보다 크다
if-else 조건문 y = 3
if y > 5:
print("y는 5보다 크다")
else:
print("y는 5보다 작거나 같다")
y는 5보다 작거나 같다
다중 조건문(if-elif-else) score = 85
if score >= 90:
print("A 학점")
elif score >= 80:
print("B 학점")
else:
print("C 학점")
B 학점

조건문을 통해 프로그램은 상황에 따라 유연하게 대응할 수 있습니다. 예를 들어, 사용자의 입력에 따라 다른 결과를 출력하거나 특정 조건이 만족될 때만 연산을 수행하는 등의 작업이 가능합니다.


2. 반복문: 작업의 자동화

반복문은 특정 작업을 여러 번 수행할 때 사용됩니다. 파이썬에서는 for 반복문과 while 반복문이 주로 사용되며, 각각의 반복문은 특정 상황에 적합한 방식으로 활용됩니다.

for 반복문

for 반복문은 반복 가능한 객체(iterable)를 순회하며 반복 작업을 수행합니다. 주로 리스트, 튜플, 문자열과 같은 자료형을 다룰 때 사용됩니다.

설명예시 코드실행 결과

리스트 순회 numbers = [1, 2, 3, 4, 5]
for num in numbers:
print(num)
1
2
3
4
5
문자열 순회 text = "Python"
for char in text:
print(char)
P
y
t
h
o
n
range 함수 사용 for i in range(5):
print(i)
0
1
2
3
4

while 반복문

while 반복문은 조건이 참인 동안 계속해서 반복을 수행합니다. 반복 횟수가 사전에 정해지지 않았을 때 주로 사용됩니다.

설명예시 코드실행 결과

기본 while 반복문 i = 0
while i < 5:
print(i)
i += 1
0
1
2
3
4
무한 루프 (종료 조건 포함) while True:
x = input("종료하려면 q를 입력하세요: ")
if x == "q":
break
사용자가 q 입력 시 종료

 

조건문과 반복문의 제어

 

3. 반복문 제어: break, continue, pass

파이썬에서는 반복문 내에서 흐름을 제어할 수 있는 세 가지 키워드 break, continue, pass를 제공합니다. 이를 통해 반복 작업을 보다 유연하게 제어할 수 있습니다.

키워드설명예시 코드실행 결과

break 반복문을 즉시 종료하고 빠져나옵니다. for i in range(5):
if i == 3:
break
print(i)
0
1
2
continue 현재 반복을 건너뛰고 다음 반복을 수행합니다. for i in range(5):
if i == 3:
continue
print(i)
0
1
2
4
pass 아무 동작도 하지 않고 넘어갑니다. 주로 자리 표시 용도로 사용됩니다. for i in range(5):
if i == 3:
pass
print(i)
0
1
2
3
4

이러한 제어 키워드는 조건에 따라 반복 작업을 중단하거나 건너뛰어, 보다 세밀한 흐름 제어를 가능하게 합니다.


4. 중첩 조건문과 중첩 반복문

중첩 조건문은 조건문 안에 또 다른 조건문을 포함하는 형태로, 보다 복잡한 조건을 처리할 때 유용합니다. 마찬가지로 반복문도 중첩하여 사용할 수 있으며, 이 경우 다차원 데이터나 여러 단계의 작업을 처리할 때 활용됩니다.

중첩 조건문 예시

python
코드 복사
x = 10 y = 20 if x > 5: if y > 15: print("x는 5보다 크고, y는 15보다 큽니다.")

중첩 반복문 예시

python
코드 복사
for i in range(3): for j in range(2): print(f"i: {i}, j: {j}")

예시 코드실행 결과

중첩 조건문 x는 5보다 크고, y는 15보다 큽니다.
중첩 반복문 i: 0, j: 0
i: 0, j: 1
i: 1, j: 0
i: 1, j: 1
i: 2, j: 0
i: 2, j: 1

 

조건문과 반복문이 제공하는 유연한 제어

 

조건문과 반복문은 파이썬 프로그램에서 논리와 흐름을 제어하는 핵심 도구입니다. 조건문은 상황에 따라 프로그램이 다르게 동작하도록 하며, 반복문은 동일한 작업을 자동화하여 효율성을 높입니다. 또한 break, continue, pass와 같은 제어 키워드를 통해 반복 작업을 정교하게 관리할 수 있습니다.

이러한 제어 구조를 올바르게 이해하고 활용하면, 복잡한 문제를 간결하고 효율적으로 해결할 수 있는 프로그램을 작성할 수 있습니다. 조건문과 반복문은 파이썬뿐만 아니라 모든 프로그래밍 언어에서 필수적인 개념이므로, 이를 깊이 있게 이해하는 것이 중요합니다.