2025. 1. 19. 18:42ㆍ프로그래밍 언어/Python
Python에서 제어문은 코드의 흐름을 조건이나 반복에 따라 제어하는 데 사용됩니다. 이 섹션에서는 조건문과 반복문, 그리고 이를 활용한 다양한 기법에 대해 알아봅니다.
3.1 조건문 (if, elif, else)
조건문은 주어진 조건에 따라 코드 블록을 실행하거나 건너뛸 수 있도록 합니다.
기본 구조
if 조건식:
실행문 # 조건식이 참일 때 실행
elif 조건식:
실행문 # 위 조건이 거짓이고, 이 조건이 참일 때 실행
else:
실행문 # 모든 조건이 거짓일 때 실행
예제
x = 10
if x > 15:
print("x는 15보다 큽니다.")
elif x == 10:
print("x는 10입니다.")
else:
print("x는 15보다 작고 10이 아닙니다.")
실행 결과:
x는 10입니다.
조건식에서 False로 평가되는 값들
Python에서 다음 값들은 조건식에서 False로 평가됩니다:
- False
- None
- 숫자 0 (0, 0.0, 0j)
- 빈 컨테이너 ([], {}, (), '', "")
- 사용자 정의 객체에서 __bool__ 또는 __len__ 메서드가 False 또는 0을 반환하는 경우
value = []
if not value:
print("빈 컨테이너입니다.")
실행 결과:
빈 컨테이너입니다.
3.2 반복문 (for, while)
반복문은 특정 조건이 충족될 때까지 코드를 반복 실행합니다.
for문
리스트, 튜플, 문자열 등 반복 가능한 객체의 요소를 순회합니다.
fruits = ["apple", "banana", "cherry"]
for fruit in fruits:
print(fruit)
실행 결과:
apple
banana
cherry
range() 함수 사용법
range() 함수는 지정된 범위의 숫자를 생성하여 for문에서 순회할 수 있도록 합니다.
# 기본 사용법
for i in range(5):
print(i) # 0에서 4까지 출력
# 시작 값과 끝 값 지정
for i in range(2, 6):
print(i) # 2에서 5까지 출력
# 증가 폭 지정
for i in range(1, 10, 2):
print(i) # 1, 3, 5, 7, 9 출력
실행 결과:
0
1
2
3
4
2
3
4
5
1
3
5
7
9
while문
조건식이 참인 동안 코드를 반복 실행합니다.
count = 0
while count < 3:
print(count)
count += 1
실행 결과:
0
1
2
3.3 반복문 심화 (enumerate, zip 활용)
enumerate
리스트나 튜플의 요소를 반복하면서 인덱스도 함께 가져옵니다.
names = ["Alice", "Bob", "Charlie"]
for index, name in enumerate(names):
print(f"{index}: {name}")
실행 결과:
0: Alice
1: Bob
2: Charlie
zip
여러 시퀀스를 병렬로 순회합니다.
names = ["Alice", "Bob", "Charlie"]
ages = [25, 30, 35]
for name, age in zip(names, ages):
print(f"{name} is {age} years old.")
실행 결과:
Alice is 25 years old.
Bob is 30 years old.
Charlie is 35 years old.
길이가 다른 시퀀스 처리: 길이가 다른 시퀀스가 zip에 전달되면 짧은 쪽의 길이에 맞춰 순회합니다.
names = ["Alice", "Bob"]
ages = [25, 30, 35]
for name, age in zip(names, ages):
print(f"{name} is {age} years old.")
실행 결과:
Alice is 25 years old.
Bob is 30 years old.
3.4 중첩 반복문
반복문 안에 또 다른 반복문을 포함하여 사용합니다.
for i in range(1, 4):
for j in range(1, 4):
print(f"i: {i}, j: {j}")
실행 결과:
i: 1, j: 1
i: 1, j: 2
i: 1, j: 3
i: 2, j: 1
i: 2, j: 2
i: 2, j: 3
i: 3, j: 1
i: 3, j: 2
i: 3, j: 3
3.5 break, continue, else 키워드 활용
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
else
반복문이 정상적으로 종료되었을 때 실행됩니다 (break로 종료되지 않을 경우).
for i in range(5):
if i == 6:
break
else:
print("반복문이 정상적으로 종료되었습니다.")
실행 결과:
반복문이 정상적으로 종료되었습니다.
else 절의 특수한 사용 사례: 반복문을 사용해 특정 조건을 확인하고, break 없이 종료되었을 때 후속 작업을 처리하는 데 유용합니다.
for i in range(2, 10):
for j in range(2, i):
if i % j == 0:
break
else:
print(f"{i}는 소수입니다.")
실행 결과:
2는 소수입니다.
3는 소수입니다.
...
이번 섹션에서는 Python의 제어문을 다루었습니다.
'프로그래밍 언어 > Python' 카테고리의 다른 글
Python - 5. 함수 (0) | 2025.01.19 |
---|---|
Python - 4. 리스트와 문자열 심화 (0) | 2025.01.19 |
Python - 2. 연산과 연산자 (0) | 2025.01.19 |
Python - 1. 자료형과 변수 (0) | 2025.01.19 |
Tkinter 기본 기능 (0) | 2024.07.30 |